Автоматически PropertyChanged Повышения, когда внутреннее свойство объекта было изменено

Я получил сценарий как это

Class Parent 
{
    Property  A;
 }

 Class A 
 {
      Property X
 }

Как я могу получить a PropertyChangedNotification на Свойстве A, когда X изменений? Я не хочу отсылать 'Родителя' в классе A или любом виде события, которое портит мое отделение. То, что я в основном хочу, должно сделать Parent.IsDirty==true. Это - очень упрощенная версия моей истории, я получил десятки классов как Родитель, таким образом, я ищу некоторый универсальный способ обработать это.

Обратите внимание на то, что это не фактический код. Я получил все INotifyPropertyChanged реализация. Я просто задаюсь вопросом любой легкий механизм как RaisePropertyChanged("A.X")

7
задан Dave Clemmer 13 May 2013 в 15:13
поделиться

1 ответ

Вы можете попытаться зарегистрировать событие propertychanged в родительском классе. В конструкторе вы можете подписаться на событие:

public Parent()
{
    A.OnPropertyChanged += OnAPropertyChanged;
}

void OnAPropertyChanged(object sender, PropertyChangedEventArgs e)
{
    if (e.PropertyName == "X")
        if(PropertyChanged != null)
             PropertyChanged(this, new PropertyChangedEventArgs("A"))
}

надеюсь, это поможет ...

8
ответ дан 7 December 2019 в 05:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: