Недавно я узнал, что wpf обрабатывает INotifyPropertyChanged двумя разными способами. Я просто хочу знать, в чем причина.
Возьмем нормальную привязку twoway с подтверждением true.
если вы установите свойство из ui в viewmodel, оно будет выглядеть следующим образом.
- запущен вызов setter
- значение
- Началась инициализация INotifyPropertyChanged
- Выполнен INotifyPropertyChanged
- setter done
- getter вызван и сделан
- Вызывается и выполняется идентификатор IDataErrorInfo
но если вы установите свойство в своей модели просмотра, оно будет выглядеть следующим образом
- запущен вызов setter
- значение
- Началась инициализация INotifyPropertyChanged
- getter вызван и сделан
- Вызывается и выполняется идентификатор IDataErrorInfo
- Выполнен INotifyPropertyChanged
- setter done