我已成功将控件绑定到页面上的属性。我绑定的属性返回一个类。绑定有效,但如果我将属性设置为类的新实例,则 UI 不会更新。
谁能指出解决这个问题的正确方向,我已经尝试实现 INotifyPropertyChanged 但这不起作用。
代码如下..
XAML - 非常基本,只是试图将标签绑定到属性。
<Grid>
<Label Content="{Binding StudentName}"></Label>
<Button Width="100" Height="75" Click="Button_Click" ></Button>
</Grid>
C#
this.DataContext = parentWindow.SelectedStudent;
父窗口C#注意父窗口实现INotifyPropertyChanged
public event PropertyChangedEventHandler PropertyChanged;
public UCStudent SelectedStudent
{
get
{
if (_selectedStudent == null)
{
_selectedStudent = new UCStudent();
}
return _selectedStudent;
}
set
{
if (_selectedStudent != value)
{
_selectedStudent = value;
OnPropertyChanged("SelectedStudent");
}
}
}
protected void OnPropertyChanged(string name)
{
PropertyChangedEventHandler handler = PropertyChanged;
if (handler != null)
{
handler(this, new PropertyChangedEventArgs(name));
}
}
问题是当我将 SelectedStudent 属性设置为新选择的学生时,绑定不会更新。