Wpf 绑定对于熟悉它的人来说很有趣,对于新手来说是噩梦。如果我将一个组合框绑定到注释掉的 CollectionView,该控件将显示所有元素,包括那些被过滤器排除的元素。如果我将相同的组合框绑定到 ICollectionView 它只显示过滤的元素,它是好的。
//public CollectionView MyCapitoliList { get; private set; }
public ICollectionView MyCapitoliList { get; private set; }
这是我用来创建 CollectionView 和 ICollectionView 的代码
MyCapitoliList = CollectionViewSource.GetDefaultView(listaCapitoli);
//MyCapitoliList = new CollectionView(listaCapitoli);
MyCapitoliList.Filter = new Predicate<object>(isCapitoloMaster);
我检查了 CollectionView 从 C# 代码打印它的所有元素,它只包含过滤的元素,所以 CollectionView 是好的。如果我将它绑定到组合框,为什么会得到所有未过滤的元素?
谢谢菲利波