【问题标题】:XAML Binding a list and filterXAML 绑定列表和筛选器
【发布时间】:2014-03-18 07:53:08
【问题描述】:

我有一个 LongListSelector 元素,其 ItemsSource 类似于 ItemsSource="{Binding MyList}" MyList 是 MyObj 的 ObservableCollection。 MyObj 有两个属性,一个 ID 和一个 Name。

我想过滤 MyList,只显示名称为“test”的元素。

我可以在 xaml 代码中执行此操作吗?

谢谢

【问题讨论】:

    标签: xaml windows-phone-8


    【解决方案1】:

    使用 LINQ,您可以在代码中执行此操作

    var result = MyList.Where(w => w.Name.Equals("test"));
    

    在 xaml 中你需要 CollectionViewSource

    查看这些有用的链接

    http://www.geoffhudik.com/tech/2010/10/14/wp7-in-app-searching-filtering.html

    http://code.msdn.microsoft.com/wpapps/CSWP8CollectionViewSource-41c362bf

    http://www.spikie.be/blog/post/2012/04/12/Filtering-collections-from-XAML-using-CollectionViewSource.aspx

    【讨论】:

      【解决方案2】:

      您无法在 xaml 中过滤您的列表,在您的代码中更改您的 ObservableCollection。如果您使用C#,这将是:

      MyList = new ObservableCollection<MyObj>(allItems.Where(x => x.Name == "test"));
      

      【讨论】:

        猜你喜欢
        • 2011-11-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-10-27
        • 2012-10-21
        • 1970-01-01
        相关资源
        最近更新 更多