我发布了WPF绑定,我将ListBox绑定到人ObservableCollection,Textbox作为显示人的DataTemplate,我希望TextBox的背景如果红色则从红色变为绿色,如果是绿色则从绿色变为红色,它更改,但ListBox没有显示更改,我已提高ObservableCollection但它不起作用。
我创建了一个小型新项目,请下载HERE,然后查看我错过的内容。
在文本框中运行应用程序类型人员ID(例如1)并按下更改颜色按钮后,颜色将会改变,但列表框不会响应该更改。
提前致谢
答案 0 :(得分:1)
您还应该在INotifyPropertyChanged
类:
People
接口
public class People : INotifyPropertyChanged
{
public int PersonID { get; set; }
private string _fullName;
public string FullName
{
get { return _fullName; }
set { _fullName = value; OnPropertyChanged("FullName"); }
}
private bool _Status;
public bool Status
{
get { return _Status; }
set { _Status = value; OnPropertyChanged("Status"); }
}
private SolidColorBrush _statusColor;
public SolidColorBrush StatusColor
{
get { return _statusColor; }
set { _statusColor = value; OnPropertyChanged("StatusColor"); }
}
public event PropertyChangedEventHandler PropertyChanged;
private void OnPropertyChanged(string name)
{
if (PropertyChanged != null)
PropertyChanged(this, new PropertyChangedEventArgs(name));
}
}