当前位置:  开发笔记 > 编程语言 > 正文

如何有效地将可观察集合中的范围选择到另一个可观察集合中

如何解决《如何有效地将可观察集合中的范围选择到另一个可观察集合中》经验,为你挑选了1个好方法。

像(伪代码)的东西

ObservableCollection ob1 = new ObservableCollection();
ob1.Add(...);
ob1.Add(...); 
ob1.Add(...);
ob1.Add(...); 
ObservableCollection ob2;
ob2 = ob1.Range(0, 2);

考虑到两个集合都可以包含大量数据.

谢谢



1> nvoigt..:
ObservableCollection ob1 = new ObservableCollection();
ob1.Add(...);
ob1.Add(...); 
ob1.Add(...);
ob1.Add(...); 
ObservableCollection ob2;

// ob2 = ob1.Range(0, 2);
ob2 = new ObservableCollection(ob1.Skip(0).Take(2));

现在如果你真的坚持这种.Range方法,你可以自己写一个扩展:

public static class ObservableCollectionExtensions
{
    public static ObservableCollection Range(this ObservableCollection sequence, int start, int count)
    {
         return new ObservableCollection(sequence.Skip(start).Take(count));
    }
}

现在你的代码应该编译:

ObservableCollection ob1 = new ObservableCollection();
ob1.Add(...);
ob1.Add(...); 
ob1.Add(...);
ob1.Add(...); 
ObservableCollection ob2;

ob2 = ob1.Range(0, 2);

推荐阅读
mobiledu2402852413
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有