XAML绑定列表和过滤器

时间:2014-03-18 07:53:08

标签: xaml windows-phone-8

我有一个LongListSelector元素,其中包含像ItemsSource="{Binding MyList}"这样的ItemsSource MyList是MyObj的ObservableCollection。 MyObj有两个属性:ID和名称。

我希望过滤MyList只有名称为" test"的元素。将会显示。

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

由于

2 个答案:

答案 0 :(得分:2)

使用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

答案 1 :(得分:1)

您无法在xaml中过滤列表,更改后面代码中的ObservableCollection。如果您使用C#,则会:

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