1

ObservableCollection があります。このコレクションには 2 つのアイテム (モデル) があり、モデルにはプロパティとして Value があります。

アイテムが変更されたときに発生すると思われるコレクションの CollectionChanged イベントがあるため、モデルの値が設定されたときにこのイベントが発生することを期待していますが、そのイベントを発生させるためにモデルをどのように構成する必要がありますか?

モデルがイベントを持つことができ、モデルが追加されたときにハンドラーをこのイベントに割り当てることができることは知っていますが、コレクション内のアイテムの変更に対して CollectionChanged がどのように機能するか知りたいですか?

4

3 に答える 3

3

CollectionChangedコレクション内のモデルが別のモデルに置き換わった場合にのみ発生します。すでにコレクション内にあるモデルへのプロパティの変更は、それを発生させません。

INotifyPropertyChanged.PropertyChangedモデルが公開する必要のあるイベントでそれらを処理する必要があります。

于 2013-01-28T19:34:20.270 に答える
2

コレクションのインデックスに新しい「モデル」アイテムを割り当てた場合にのみ、要素内のプロパティが変更されても起動しません。

Modelクラス内のプロパティ値を変更したときにWPFを更新する場合は、モデルインスタンスにを実装させる必要がありますINotifyPropertyChanged

于 2013-01-28T19:33:43.190 に答える