0

MyPropertyビューモデルにもいくつかのプロパティを持つプロパティがあります。OnPropertyChanged("MyProperty")プロパティの 1 つが変更された場合にのみ明示的に呼び出したい。

私がすることができます

MyProperty.PropertyChanged += MyPropertyChanged;

ただし、すべてのプロパティが変更されたときにハンドラーが呼び出されます。一致するかどうかを確認できることはPropertyNameわかっていますが、より良い方法があるかどうかを知りたいです。

これが必要な理由はMyProperty、いくつかのコントロールにバインドしていて、コンバーターで複数のプロパティを使用する必要があるためですが、これらのプロパティが変更された場合、変更はコントロールに表示されません。

4

1 に答える 1

1

MyProperty の型のプロパティが何にもバインドされていない場合、その型が INotifyPropertyChanged を実装する理由はありません。そのプロパティの 1 つに対する変更を手動で処理する必要がある場合は、それが変更されたときに発生させるカスタム イベントを定義し、ビュー モデルで処理するだけです。すでに PropertyChanged を使用して文字列を比較している場合 - イベントが 1 秒間に何度も発生しない限り問題ないはずです。

于 2013-04-06T21:59:16.827 に答える