如何对可观察集合进行排序/过滤并返回可观察集合而不是 IEnumerable
任何人都可以指导我哪种是排序/过滤可观察集合并返回可观察集合而不是 IEnumerable 的最佳方法吗?
Can any one please guide me which is best way to sort/filter observable collection and get back observable collection not IEnumerable ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
对于排序,您可以将其转换为列表,然后调用 Sort(),提供比较委托。类似于:-
my_collection.ToList().Sort((left, right) => left == right ? 0 : (left > right ? -1 : 1));
Probably for the sort you can convert it to a List and then call Sort(), providing a comparison delegate. Something like:-
my_collection.ToList().Sort((left, right) => left == right ? 0 : (left > right ? -1 : 1));
如果排序/过滤的结果是
IEnumerable
那么您只需创建另一个ObservableCollection
并将结果作为参数传递给构造函数查看此问题
If the result of sorting/filtering is
IEnumerable<T>
then you can just create anotherObservableCollection
and pass result as a parameter to constructorSee this question
您可以查看我的
ObservableView
实现,它包装了可观察集合(或其他列表)并提供“实时”排序和过滤:https://mytoolkit.codeplex.com/wikipage?title=ObservableView
You may have a look at my
ObservableView
implementation which wraps an observable collection (or other list) and provides "live" ordering and filtering:https://mytoolkit.codeplex.com/wikipage?title=ObservableView