Как получить доступ к свойству ViewModel из другого ViewModel?



У меня есть проект WPF, использующий MVVM. У меня есть два мнения: ClientView и CommentView.



В ClientView после выбора клиента в DataGrid я открываю экран с CommentView.



Как получить доступ к свойству Client на CommentViewModel?



Примечание: СВОЙСТВО Client принадлежит ClientViewModel.
482   2  

2 ответов:

  • Если CommentViewModel и ClientViewModel сильно связаны, вы можете использовать его напрямую
  • Если визуальное дерево CommentView содержит в любом месте datacontext из ClientViewModel, вы можете использовать привязку RelativeSource, чтобы добраться туда
  • Вы можете использовать MEF для экспорта свойства" Client " и импорта его в CommentViewModel
  • Вы можете использовать своего рода мессенджер или EventAggregator для передачи сообщений от CommentViewModel к ClientViewmodel

И еще несколько я подумайте:)

Передайте ссылку ClientViewModel или ClientViewModel.Client на CommentViewModel при его создании.

Comments

    Ничего не найдено.