オブジェクトグラフでオブジェクトの変更を監視し、その変更に基づいて何かを行う方法はありますか?
私が次のものを持っているとしましょう:
public class Main:INotifyPropertyChanged
{
public ObservableCollection<Foo> FooItems { get; }
public ObservableCollection<Bar> BarItems { get; }
}
public class Foo:INotifyPropertyChanged
public class Bar:INotifyPropertyChanged
{
public ObservableCollection<Other> OtherItems { get; }
}
public class Other:INotifyPropertyChanged
すべてのオブジェクトにある種の変更通知システムを実装する最良の方法は何でしょうか? たとえば、自動保存では、変更が発生すると、システムがMain
クラスをシリアル化します。
変更をMain
監視し、それらに接続するクラスにグルーコードを含める必要がありますか? これは少し面倒で、エラーが発生しやすいようです。より良い方法はありますか?BarItems
PropertyChanged