none
请问ObservableCollection的Where方法返回的结果如何转化为一个ObservableCollection? RRS feed

  • 问题

  • string id="to find";

    var m = GroupList.Where<MyGroup>(g => g.Id == id);

    上面的代码,这个返回的“m”到底是个啥?我看帮助说Where是对列表进行筛选,那么这个“m”应该就是筛选之后的结果把?

    但是这个“m”居然又不是ObservableCollection类型,这让我很困惑。一般我进行筛选之后,是需要将结果放在控件的ItemsSource中,而这个返回的“m”不是ObservableCollection,那我应该怎么做?

    难道要用m.ElementAt方法将其一个 一个添加到另外一个ObservableCollection中吗?


    da jia hao!

    2017年10月6日 8:20

答案

  • 您好,

    ObservableCollection有这样一个构造函数:

    public ObservableCollection<T>(IEnumerable<T> collection)

    可以这样使用:

    var oc=new ObservableCollection<string>(m);

    (LINQ方法返回IEnumerable<T>)

    • 已标记为答案 liubin 2017年10月8日 3:08
    2017年10月7日 0:32