MSDN 参考页面ObservableCollection<T> https://msdn.microsoft.com/en-us/library/ms668604(v=vs.100).aspx notes:
“您收藏的物品必须满足绑定源概述 https://msdn.microsoft.com/en-us/library/ms743643(v=vs.100).aspx。特别是,如果您正在使用OneWay https://msdn.microsoft.com/en-us/library/system.windows.data.bindingmode(v=vs.100).aspx or TwoWay https://msdn.microsoft.com/en-us/library/system.windows.data.bindingmode(v=vs.100).aspx(例如,您希望 UI 在源属性动态更改时更新),您必须实现合适的属性更改通知机制,例如INotifyPropertyChanged https://msdn.microsoft.com/en-us/library/system.componentmodel.inotifypropertychanged(v=vs.100).aspx界面。”
Since ObservableCollection<T>
已经实现了INotifyPropertyChanged
,为什么我需要再次实施INotifyPropertyChanged
on T
also?
将可观察集合视为表的数据源。集合中的每个对象占据一行,并跨多列显示在表中。
视图(即您的表)需要知道何时修改每个单元格,以响应对象属性的更改,以及在集合中添加和删除对象的情况。
您的可观察集合负责处理表行:当对象被插入、删除、移动等时,它会通知观察者。然而,它缺乏对单个对象发生的情况的了解,因此在处理表格列.
这就是你的对象的用武之地:通过实现INotifyPropertyChanged
它们让您的表管理列中的数据。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)