<TextBlock Text="{Binding Name}"/>
В приведенном выше коде вы связываете свойство Name
с текстовым полем и в следующем коде:
private void Button_Click(object sender, RoutedEventArgs e)
{
MyPerson = new Person { Name = "B" };
}
Вы установили MyPerson
для нового человека.
Это предназначено? И реализует ли Person
class INotifyPropertyChanged
событие?
Вы только обновляете MyPerson
свойство. DataContext
по-прежнему имеет ссылку на объект, который вы создаете, используя следующую строку:
MyPerson = new Person { Name = "A" };
в конструкторе. Вам также необходимо обновить DataContext
.
Вместо этого используйте следующий код:
private void Button_Click(object sender, RoutedEventArgs e)
{
MyPerson = new Person { Name = "B" };
DataContext = MyPerson;
}