それぞれに言語プロパティを持つ複数のDocumentEntryオブジェクトを含む観測可能なコレクションがあります。これをDataGridに表示してドキュメントを更新できるようにしましたが、エントリが多すぎるため、コンボボックスに言語名を追加しました。その言語のドキュメントのみを表示する必要があります。LINQ to Observable collection
文書のコレクションはのObservableCollectionですが、私は
myDataGrid.DataContext = (from d in documents where d.language == selectedLanguage select d);
を言うときLINQクエリの結果は、監視可能なコレクションではありません。私はこれをまったく適切にフィルタリングしていますか?このケースでは、データグリッド内のObservableCollectionを言語別に最適にフィルタリングするにはどうすればよいですか?
乾杯
ニクこれを試してみてください。この
myDataGrid.DataContext = documents;
CollectionViewSource cvs = CollectionViewSource.GetDefaultView(documents);
vse.Filter = delegate(object obj)
{
Document doc = obj as Document;
if(doc == null)
return false;
return doc.language == selectedLanguage;
}
ありがとうございます:-) – niklassaers
あなたは幸せです –