Я использовал следующий фрагмент кода в режиме резака для файлов cookie для десятков классов
public event PropertyChangedEventHandler PropertyChanged;
protected void NotifyPropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
Все эти классы реализуют INotifyPropertyChanged
. DRY alarms, в последнее время я реорганизовал эти классы, чтобы унаследовать мой базовый класс PropertyNotifier
, единственная цель которого - предоставить NotifyPropertyChanged
для классов, которые наследуют от него, а это десятки ViewModel
классы в моем огромном проекте
Это кажется ленивым и немного грязным. Я ухудшаю производительность или нарушаю хорошие методы проектирования? Я полагаю, если бы уведомление об изменении должно было быть таким простым, в структуре WPF уже существовал бы базовый класс, который делает то же, что и мой класс PropertyNotifier
.
Обратите внимание, что по многим причинам я у меня были проблемы с производительностью моего пользовательского интерфейса - в основном из-за большого количества элементов управления. Поэтому я стараюсь избавиться от жира везде, где могу. Есть идеи?