2011-12-23 49 views
0

我有一个关于组合框绑定的问题。在Silverlight中组合框过滤

我有一个组合框,填充了一些值,我想过滤这个组合框,只显示满足checkBox值的值。

例如:我有一个名为Male的复选框。当我检查它时,我想在comboBox中只显示Gender是Male的对象。

这可能吗?

回答

0

将您的ComboBox绑定到一个集合,比如一个可观察的集合以及复选框的双向绑定。 当你点击复选框时,你的布尔属性将被通知。基于这个过滤你的收藏。组合框现在将有过滤项目。

0

检出PagedCollectionView。将您的收藏夹与您的ComboBox目前绑定到PageCollectionView,然后绑定到该收藏夹。 PagedCollectionView具有Filter属性,它使用Predicate来过滤集合中的项目。

过滤器有一些问题导致它在过滤器中使用的属性更新时不更新。另外,它在项目更改时不会更新。要强制更新,可以将其设置为null,然后恢复为原始值。你可能能够使用Refresh方法,但我没有测试过。