Где находится реализация PropertyChanged EventHandler? - PullRequest
1 голос
/ 28 сентября 2010

Я немного растерялся.Я не понимаю, какой код на самом деле выполняется, когда я реализую интерфейс INotifyPropertyChanged.Как я представляю, цепочка выглядит следующим образом:

  • Влияния моего класса INotifyPropertyChanged =>
  • Каждый установщик свойства вызывает
    метод NotifyPropertyChanged =>
  • PropertyChangedEventHandler
    invokes => ???

И мне интересно, какой код заставляет мой контроль перерисовываться.Спасибо.

1 Ответ

1 голос
/ 28 сентября 2010

Элемент управления будет подписываться на событие при его привязке. Когда вы вызываете событие, элемент управления проверяет, является ли измененное свойство одним из тех, о которых оно заботится. Если это так, он извлечет новое значение свойства и выполнит повторную визуализацию.

Конечно, у обработчика нет , который может быть связан с перерисовкой элементов управления - они могут делать что угодно Это просто способ сказать: «Эй, свойство X изменило свою ценность ... если тебе это важно, сделай что-нибудь». Вы можете очень легко добавлять свои собственные обработчики, как и любые другие обработчики событий.

...