Как уведомить, что все свойства модели представления изменились

В шаблоне MVVM, как уведомить, изменились все свойства модели представления? Я надеваю' t, хотят назвать все notifypropertychanged событие всех свойств.

У меня есть класс объекта и в поле зрения модель, которую я записал всем общедоступным полям объекта как общественные собственности. Я хочу снова переплести новый объект и просто записать одну строку кода, чтобы уведомить, что все свойства изменились?

Спасибо за помощь.

27
задан mkus 6 August 2010 в 09:01
поделиться

2 ответа

Просто вызовите событие PropertyChanged с пустой строкой в ​​качестве имени свойства:

OnPropertyChanged(String.Empty);
50
ответ дан 28 November 2019 в 05:08
поделиться

Хорошо, что я понял из вашего вопроса, это ..

View <> ViewModel <> Entity (с кучей свойств)

View привязан к ViewModel, который делегирует в Entity. Теперь вы хотите заменить поддерживающую сущность и сигнализировать об обновлении представления для обновления до более новой сущности.

Я бы предложил реализовать индексатор в ViewModel, который принимает строку (имя свойства поддержки). ViewModel может использоваться в качестве кеша при необходимости, делегируя поддержку объекту поддержки только в случае промаха.

Когда вы заменяете объект, viewModel очищает свой кеш и запускает NotifyPropertyChanged (в наборе индексатора) с String.Empty или null. Как я узнал сегодня, указывает, что все свойства изменились .

Таким образом, вы не создаете n делегирующих свойств в ViewModel. Результат поиска в Google показывает, что хотя бы один раз он был успешно использован.

0
ответ дан 28 November 2019 в 05:08
поделиться
Другие вопросы по тегам:

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