私はWPFの使用にまったく慣れておらず、私が取り組んでいるアプリケーションでListCollectionView.Refresh()
は、ListCollectionビューモデルのオブジェクトの1つが変更されるたびにアプリケーションが非常に非効率になりました(ListCollectionView
リストコレクションビューモデルにバインドされています)。アプリケーションを削除した後はRefresh()
、よりスムーズに実行され、ListCollection ビュー モデルで変更が発生した場合でも更新されます。周りを見回した後、フィルターまたは再ソートがあるときはいつでも、CollectionView
への暗黙の呼び出しがあるようRefresh()
です。Refresh()
それで、いつ再作成する必要がありCollectionView
ますか?
質問する
2381 次
2 に答える
3
私があなたを正しく理解していればListCollectionView
、ListCollectionViewModel (独自のクラス) にバインドされている があります。ListCollectionViewModel がINotifyCollectionChanged
適切に実装され (ObservableCollection<T> から継承されているなど)、コレクション内の項目がINotifyPropertyChange
適切に実装されている限り、Refresh() を呼び出す必要はありません。
于 2012-07-06T01:08:57.463 に答える
0
CollectionView は、複数の項目が変更されている (例外が発生する) CollectionChanged イベントを処理しません。Refresh()
代わりに使用できます。そのため、フィルターと並べ替えを使用した呼び出しが表示されます。
于 2012-07-06T11:55:17.287 に答える