WPF亮点之一就是可以使用双向绑定,实现前后端的分离。在绑定的时候,前端Xaml文件需要绑定ViewModel中的字段。 绑定字段可以分几种类型
- T 属性,在属性的Set方法中需要调用PropertyChanged方法,用于通知界面
- List 属性,与UI中含有Items的控件绑定
- ObservableCollection 属性,与UI中含有Items的控件绑定,与List 不同的是,ObserverableCollection 在该集合中添加一个T,该属性会通知界面。
- CollectionView属性 实现的功能是可以对List 或者 ObservableCollection进行筛选,移动CurrentItem。
关键代码如下:
public class MainVM : INotifyPropertyChanged
{
public MainVM()
{
this.Search = "kun";
}
//public List<User> Users { get; set; }
public ObservableCollection<User> Users { get; set; }
public ICollectionView _CollectionView
{
get
{
return CollectionViewSource.GetDefaultView(Users);
}
}
private string _search;
public event PropertyChangedEventHandler PropertyChanged;
public string Search
{
get
{
return _search;
}
set
{
_search = value;
if (PropertyChanged != null)
PropertyChanged(this, new PropertyChangedEventArgs("Search"));
_CollectionView?.Refresh();
}
}
}
详细Demo请下载 pan.baidu.com/s/1R7Sllbsl… 提取码: jybx 另外,有人知道怎么在Markdown中添加附件吗,如果知道请告知,感谢