强强的个人技术博客 医技科室软件(PACS, RIS)码农

WPF中 List<T>与 ObservableCollection<T>的 区别

WPF中 List<T>与 ObservableCollection<T>的 区别


C#中 List<T>与ObservableCollection<T>的用法基本上是一样的。

都是继承 IEnumerable<T>等基本接口


主要区别:

list<T>:

当T继承于INotifyPropertyChanged时,如果list<T>中的属性发生改变,则通知UI属性值已发生改变。但当list<T>集合变化时,list<T>就无法通知前端UI了


ObservableCollection<T>:

IEnumerable<T>自己已经继承过INotifyCollectionChanged,INotifyPropertyChanged等方法,所以

当ObservableCollection<T>集合变化时,会自动通知绑定该ObservableCollection<T>的控件并做相应修改。

如果希望当T中的属性发生改变时通知UI,则T也需要继承于INotifyPropertyChanged。



2022年8月8日 | 发布:强强 | 分类:ASP.NET | 评论:0

发表留言: