我很好奇用 ViewModels
做什么最好。是实现接口(interface) INotifyPropertyChanged
还是派生自 ObservableObject
更好。
ObservableObject
类实现了 INotifyPropertyChanged
并执行了一些无聊的代码,例如 RaisePropertyChanged
。
INotifyPropertyChanged
需要实现 PropertyChanged
事件。
从我的角度来看,使用 ObservableObject
似乎更合乎逻辑,但在大部分教程中,他们在其 ViewModel
上实现了 INotifyPropertyChanged
接口(interface).
您认为这是为了简单起见还是有合乎逻辑的原因?
最佳答案
ObservableObject
是 Microsoft.Practices.Composite.Presentation 的一部分 - 即 Prism。它也已在 MVVM Light 中实现和 MVVM Foundation .
INotifyPropertyChanged
是 System.ComponentModel 的一部分 - 即它在核心库中。
因此,如果您还没有包括 Prism 或其他框架之一,我会坚持使用 INotifyPropertyChanged
。仅仅为了获得这一类而包含它似乎没有什么意义。
关于c# - ViewModel 上的 ObservableObject 或 INotifyPropertyChanged,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10093180/