有一堆ObservableCollection< MeClass>结果并要求将它们全部合并到另一个ObservableCollection< MeClass> AllResults所以我可以在列表视图中显示它.
只是不知道如何将它们全部结合在一起.
我创建了一个新课程来组合它们,但不知道如何在我获得列表之后更新它们…所以不确定要采取哪个方向.
我知道INotifyPropertyChanged我不知道如何组合它们,并随着一切的变化不断更新.
解决方法
.NET有一个
CompositeCollection
,允许您将多个集合视为单个集合.它实现INotifyCollectionChanged,所以只要你的内部集合也实现INotifyCollectionChanged(在你的情况下,它们肯定会这样做),你的绑定应该没有任何问题.
用法示例:
CompositeCollection cc = new CompositeCollection(); CollectionContainer container1 = new CollectionContainer() { Collection = Result1 } CollectionContainer container2 = new CollectionContainer() { Collection = Result2 } cc.Add(container1); cc.Add(container2);