Я понимаю, что в шаблоне MVVM ViewModel ничего не должен знать о просмотре.Каков наилучший способ для ViewModel для управления представлением?
Так что, кажется, два способа что ViewModel может причиной что-то особенное должно произойти на UI, рассмотреть этот общий поток событий:
- типов пользователей что-то в текстовое поле
- пользователь нажимает кнопку
- кнопка вызывает делегатCommand под названием «Сохранить» на viewmodel
- вид модели сохраняет текст из текстового поля
- , если все идет хорошо во время сохранения, модель вид меняет INotifyPropertyChanged свойство SaveStatus к «Преемник»
Теперь в представлении, у меня есть два пути, чтобы позволить это изменение оказывают влияние на Пользовательский интерфейс:
- в представлении не может быть TextBlock, который имеет конвертер на нем, который преобразует текст SaveStatus на фразу, как «спасбросков s ucceeded «.
- в представлении не может быть Trigger, который проверяет, является ли SaveStatus = «Преемник», и если да, то ряд сеттеров изменения пользовательского интерфейса надлежащим образом (скрывая элементы, изменяя тексты, изменение цвета и т.д.)
Является ли это основной поток информации от видового для просмотра, которые вы используете в своих приложениях?