ObservableCollection实现INotifyCollectionChanged和INotifyPropertyChanged.
我了解通过集合的事件
可以向消费者通知添加,删除(+清除)和项目替换CollectionChanged,并且如果项目PropertyChanged实现自己,则可以使用项目事件
监视现有项目中的更新INotifyPropertyChanged.
我从别人那里读到你不能在集合的事件上注册,
PropertyChanged因为它是readonly.
那么它的目的是什么,我们可以利用它做什么?
这里和那里的评论似乎让讨论变得混乱,暗示着ObservableCollection实现两个接口的神奇之处在于允许同时收集集合和项目内容更改,而这是不正确的(许多示例都忽略了这一点)绑定到一个列表框,在项目内容更改后神奇地更新,建议集合通知列表框).
实际上,这个系列的唯一优势似乎是实现INotifyCollectionChanged.ObservableCollection与其他集合相比,处理项目属性更改似乎并不容易:只有当项目实现时INotifyPropertyChanged,它们可能不会执行,并且如果用户设法独立于集合挂钩此事件,则可能.
它是否正确?