Я изучаю WPF и MVVM и пытаюсь подчеркнуть хороший дизайн. У меня большой опыт работы с WinForms и C #. Это концептуально, поэтому я не думаю, что мне нужно размещать код.
У меня есть окно xaml, которое управляет "профилями". В левой половине пользовательский вид дерева элементов управления, связанный с ViewModel, который считывает базу данных и создает иерархию профилей. ViewModel для отдельных профилей содержит идентификатор базы данных среди прочего. Правая половина - это еще один пользовательский элемент управления с ListView и собственным ViewModel, который считывает базу данных для отдельной информации профиля.
Обе половины прекрасно работают независимо, но теперь я хочу связать выделенную область в виде дерева со списком, чтобы информация в представлении списка отражала выбор в виде дерева. Каков наилучший способ сделать это?
Древовидная модель представления дерева предоставляет идентификатор профиля, который можно использовать для поиска информации профиля в просмотре списка. Опять же, цель состоит в том, чтобы просто связать эти два вместе. Я чувствую, что у меня есть несколько вариантов:
-Модель представления дерева может вызывать статический метод в модели представления списка, который обновляет профиль.
- Вся страница может содержать модель представления, в которой есть модели представления членов для обоих компонентов.
-Я мог бы как-то "направить" известный выбранный профиль viewview модели treeviewss в элемент управления listview в файле xaml.
Все эти опции кажутся грязными. Опять же, я учусь здесь и хочу подчеркнуть хороший дизайн, так как эти маленькие детали диктуют более важные решения позже.
А идеи?
Спасибо!