【发布时间】:2013-05-09 17:45:09
【问题描述】:
哪一个是保存我的数据的更好解决方案,还是取决于某些条件?
示例情况 1:
您需要在选择后在新窗口中显示可以修改的数据列表。
示例情况 2:
您需要显示一个可以在此列表中修改的数据列表。
【问题讨论】:
标签: c# wpf mvvm observablecollection
哪一个是保存我的数据的更好解决方案,还是取决于某些条件?
示例情况 1:
您需要在选择后在新窗口中显示可以修改的数据列表。
示例情况 2:
您需要显示一个可以在此列表中修改的数据列表。
【问题讨论】:
标签: c# wpf mvvm observablecollection
当您使用 MVVM 时,您应该使用 ObservableCollection<ViewModel>。
Model 应该通过 ViewModel 与 View 分离。
【讨论】:
ObservableCollection<> 已经在ViewModel 中,所以它已经与View 分开了,还是我错过了什么?
我会说使用ObservableCollection<Model>,因为它可以直接绑定到列表或数据网格。
对于示例情况 1:选择一个模型,然后将新窗口的数据上下文设置为该模型。
对于示例情况 2:使用 2 路绑定对数据网格进行就地编辑。
ObservableCollection 可以在 ViewModel 中。如下图所示。
public class MyViewModel
{
public ObservableCollection<Model> ListOfItems { get; set;}
}
【讨论】:
View 必须从模型中分离出来,所以它更像是选择一个 Model 创建一个 ViewModel,给他模型并设置这个 ViewModel作为DataContext