0
<Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <TextBox Name="myTxt" Text="{Binding}" />
    </Grid>
</Window>

namespace WpfApplication1
{

    public partial class MainWindow : Window
    {
        public MainWindow()
        {

            InitializeComponent();
            DataContext = "fdfsfds";
        }
    }
}

なぜこのコードが機能しないのだろうか? 例外がスローされます。textBox をバインドするにはどうすればよいですか?

4

2 に答える 2

3

プロパティのデフォルトBindingは- ですTextBox.TextTwoWay

「双方向バインディングにはパスまたは XPath が必要です。」

したがって、次を使用できますOneWay Binding

<Grid>
    <TextBox Name="myTxt" Text="{Binding Mode=OneWay}" />
</Grid>
于 2012-05-04T05:11:34.147 に答える
1

それでもTwoWayバインディングが必要な場合は、次のコードを使用できます。

<TextBox Name="myTxt" Text="{Binding Path=DataContext, RelativeSource={RelativeSource Self}}" />
于 2012-05-04T05:20:36.707 に答える