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は問題ありません。コンボボックスにバインドすると、フィルタリングされていない要素がすべて取得されるのはなぜですか?
ありがとうフィリッポ