对于那些熟悉它的人来说,Wpf绑定是有趣的,对于新手来说这是一场噩梦。 如果我将ComboBox绑定到注释掉的CollectionView,控件将显示所有元素,包括过滤器排除的元素。如果我将相同的组合框绑定到ICollectionView,它将只显示过滤元素,并且它是正常的。将组合框绑定到CollectionView会显示过滤掉的元素。为什么?
//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是好的。 为什么我将所有未过滤元素都绑定到组合框?
感谢 菲利波
您尚未在此处显示所有代码。你能否显示你正在使用的代码 - 并认为应该工作,绑定到列表的集合,并省略任何注释掉的代码。 – ColinE 2012-02-22 08:26:48