在C#/WPF中,提供一个实现
模型可以向底层集合添加/删除T元素,或者视图可以从视图模型层添加/删除ViewModel元素。
从MVVM模式的角度来看,这种方法是否有问题?是否有包含此类或类似类的库?
IObservableCollection<ViewModel<T>>
接口并包装模型中的ObservableCollection<T>
的类是最佳方式吗?模型可以向底层集合添加/删除T元素,或者视图可以从视图模型层添加/删除ViewModel元素。
从MVVM模式的角度来看,这种方法是否有问题?是否有包含此类或类似类的库?
ObservableCollection<MyModel>
或者ObservableCollection<MyViewModel<MyModel>>
属性的类有什么问题吗?我从来没有理解为什么人们总是想要编写继承自ObservableCollection
的东西...它就像一个带有更改通知的List
。你不会重写List<T>
来创建数据类,也不应该重写ObservableCollection<T>
(除非是为了扩展列表/集合的功能)。 - RachelItemModel
,我需要将它们中的每一个都包装在ItemViewModel
中。在 MVVM 模式中,模型不应直接暴露给视图。 - dbkkObservableCollection
。您的ViewModel应该包含一个类型为ObservableCollection<SomeViewModel>
的属性,而SomeViewModel
应该公开SomeModel
的属性。 - Rachel