1. 一般控件绑定模式默认是Mode=OneWay
但是DataGrid 默认会是双向绑定Mode=TwoWay
2.后台DataContext的类型必须是public不然赋值会无效,不明原因
实现 INotifyPropertyChanged接口,集合类需要实现INotifyCollectionChanged,OneWay或TwoWay才能反应
框架中ObservableCollection<T>已实现INotifyCollectionChanged,可直接使用
public class Book : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
private string _name;
public string Name
{
get { return _name; }
set
{
_name = value;
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("Name"));
}
}
}
}