【发布时间】:2017-03-09 16:43:46
【问题描述】:
我正在开发一个 WPF 应用程序,我最近在 ICollectionView 中封装了几个 ObservableCollections,以便我可以实现排序和过滤。
Private _EntriesSource As New BankEntry.Collection
Public ReadOnly Property Entries As ICollectionView = Windows.Data.CollectionViewSource.GetDefaultView(_EntriesSource)
排序和过滤工作得很好,但是由于这样做它似乎不太友好,尽管将任何接触集合的东西包装在 Dispatcher 线程调用中或使用 BindingOperations.EnableCollectionSynchronization 我仍然收到错误说这个集合不支持对其源集合的更改...
我正在尝试做的事情的示例只是 MyCollection.Add(item) 或 MyCollection.Remove(item)。
从 ObservableCollections 移动到 ICollectionView 是否走错了方向? 是否有更好的方法对 ObservableCollections 进行排序和过滤,同时保持从集合中添加和删除项目的能力?
【问题讨论】:
-
为什么得到视图却丢失视图源?