.net 为什么赢了';我的文本框数据绑定没有工作吗?

.net 为什么赢了';我的文本框数据绑定没有工作吗?,.net,wpf,xaml,data-binding,.net,Wpf,Xaml,Data Binding,我正在尝试将TextBox控件双向绑定到INotifyPropertyChanged对象(Person)中的string属性。当表单加载时,会调用Getter,但不会在文本框中输入值。同样,文本框中的任何更改都不会调用Person对象上的Setter XAML <Window x:Class="WpfApplication1.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" x

我正在尝试将TextBox控件双向绑定到INotifyPropertyChanged对象(Person)中的string属性。当表单加载时,会调用Getter,但不会在文本框中输入值。同样,文本框中的任何更改都不会调用Person对象上的Setter

XAML

<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">
  <TextBox x:Name="txtPersonName" 
DataContext="{Binding Path=Name, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" />
</Window>
代码隐藏

public partial class MainWindow : Window
{
    private Person viewModel = new Person();
    public MainWindow()
    {
        InitializeComponent();
        DataContext = viewModel;
    }
}

为什么文本框中输入的文本没有传播回Person对象?

XAML
中,您需要设置文本框的
text
属性,而不是
DataContext
属性

public partial class MainWindow : Window
{
    private Person viewModel = new Person();
    public MainWindow()
    {
        InitializeComponent();
        DataContext = viewModel;
    }
}