Инструментарий сообщества MVVM, обеспечивающий синхронизацию двух представлений с одной моделью в приложении Avalonia.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Инструментарий сообщества MVVM, обеспечивающий синхронизацию двух представлений с одной моделью в приложении Avalonia.

Сообщение Anonymous »

Я хочу понять возможные подходы на уровне архитектуры, которые позволяют синхронизировать два представления с одной моделью. Здесь у меня есть полная реализация, использующая обмен сообщениями MVVM Community Toolkit (см. ссылку на GitHub ниже). Какие еще способы реализации этого следует рассмотреть?
Настройка
У вас есть приложение с двумя разными представлениями, которые необходимо синхронизировать одну и ту же модель. объект между ними. Например, предположим, что у нас есть приложение для построения графиков. Слева – пользовательский интерфейс, позволяющий пользователю управлять пределами оси, а справа – представление графика, отображающее данные.
[img]https: //i.sstatic.net/UDLpYOnE.png[/img]

Когда пользователь редактирует текстовое поле, вид графика обновляется. Когда пользователь панорамирует график, текстовые поля обновляются. Таким образом, это двунаправленное действие.
Более того, давайте проследим, что происходит, когда пользователь редактирует одно из текстовых полей настроек.
  • Текстовое поле «Изменить минимальное значение»
  • Привязка представления запускает обработчик изменений в модели представления «Настройки».
  • Обработчик изменений создает новый Объект модели AxisLimits и обновляется с использованием этого значения.
  • Затем модель представления отправляет сообщение инструментария сообщества MVVM, сообщающее всем получателям об изменении.
  • Основная модель представления обрабатывает сообщение и распространяет объект новой модели по всем моделям представления.
GitHub
Посмотрите полностью рабочий пример на GitHub, https://github.com/danieljfarrell/Avalo ... ng-Example

Подробнее здесь: https://stackoverflow.com/questions/785 ... -an-avalon
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»