2016-08-01 1 views
0

В this учебник INotifyPropertyChanged находится в модели - не в ViewModel.INotifyPropertyChanged в модели

Правильно ли и приемлемо? Что такое стандарты?

+2

Wy минус ?? Это очень актуальный вопрос не только для меня - для всех новичков. – mtoy

ответ

7

INotifyPropertyChanged - это просто интерфейс, который обеспечивает функциональность, но никак не связан с MVVM. Классы, созданные Linq to SQL или тому подобное, также обычно реализуют его, например.

+3

Также стоит отметить, что он существует в 'System.ComponentModel' в' System.dll', чтобы подчеркнуть тот факт, что он не привязан к какой-либо структуре пользовательского интерфейса. –

2

Это правильно! Вы должны поднять PropertyChanged, где вы измените свойство (так что в модели в вашем случае). В других случаях это может быть в модели представления, но это действительно может быть где угодно.

Я думаю, что путаница начинается, потому что свойства в модели представления должны поднять событие PropertyChanged для обновления пользовательского интерфейса. Однако это не означает, что событие PropertyChanged должно иметь свое начало в модели представления.

Смежные вопросы