1

我正在尝试了解 MVVM 模式,并使用了一个示例程序来处理。该模型是一个 C# .net 库,在查询时返回一个IList<INote>对象。我希望我的视图能够通过数据绑定添加/编辑/删除此集合中的项目。但我不知道如何开始,使用 MVVM。请帮帮我。

模型公开了一个接口来检索IList<INote>对象,视图有一个列表框显示内容IList<INote>和几个其他控件,以将数据添加到IList<INote>.

4

3 回答 3

3

将您的 ListBox 绑定到 an ObservableCollection<T>,每次您添加或从中删除某些内容时,它都会立即更新ObservableCollection<T>

ObservableCollection<T>通常应该是您的 ViewModel 的一个属性。

如果IList您的模型中的属性不可观察(并且您无法控制它),您将必须编写代码以在您的 ViewModel 中同步它。这些都是建筑的问题。我觉得在这方面最干净的选择是实际使用 aReadOnlyObservableCollection<T>并使用您的存储库添加/删除项目并相应地同步。

于 2010-01-13T18:29:48.413 回答
1

我的博客文章应该DelegateCommand给你一个很好的基础。

于 2010-01-13T18:28:31.363 回答
0

我的列表框绑定到一个ObservableCollection<Item>并且我在这个集合中添加/删除/修改了项目。它工作正常。在没有任何 INotifyPropertyChanged 的​​情况下检查它是如何工作的。如果我错了请纠正我

于 2010-01-18T11:49:05.390 回答