WPF中的DataContext抛出异常

时间:2012-05-04 04:58:12

标签: wpf data-binding

<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?

2 个答案:

答案 0 :(得分:3)

Binding媒体资源的默认TextBox.TextTwoWay

“双向绑定需要Path或XPath。”

因此,您可以使用OneWay Binding

<Grid>
    <TextBox Name="myTxt" Text="{Binding Mode=OneWay}" />
</Grid>

答案 1 :(得分:1)

如果您仍想要TwoWay绑定,可以使用以下代码:

<TextBox Name="myTxt" Text="{Binding Path=DataContext, RelativeSource={RelativeSource Self}}" />