Передача информации из одной модели представления в другую - PullRequest
5 голосов
/ 09 декабря 2010

alt text

Я использую архитектурный шаблон M-V-VM.

Я хочу, чтобы у моей программы было два вида: Просмотр A и Просмотр B . Я запускаю программу с View A . Просмотр B отображается программой, когда я дважды щелкаю элемент в Просмотр A .

Как мне структурировать свою программу так, чтобы я мог этого достичь?

Ответы [ 2 ]

2 голосов
/ 09 декабря 2010

Имеет одну ViewModel, например:

  • ParentViewModel
    • ChildViewModel1
      • IsVisible
      • Команда, которая переключает свойство IsVisible ChildViewModel
    • ChildViewModel2
      • IsVisible

и вид как:

  • ParentView
    • ViewPart1
      • Видимость, связанная с ChildViewModel1.IsVisible (используйте BooleanToVisibilityConverter)
      • Кнопка, привязанная к команде, которая переключает видимость
    • ViewPart2
      • Видимость привязана к ChildViewModel1.IsVisible (используйте BooleanToVisibilityConverter)

Это должно решить вашу проблему.

1 голос
/ 11 декабря 2010

Вас может заинтересовать BookLibrary пример приложения WPF Application Framework (WAF) .Он показывает основной / подробный вид с двумя отдельными видами и двумя отдельными моделями представления.Кроме того, он имеет модальное диалоговое окно, включающее собственный ViewModel для операции «Предоставить», который подключен к выбранной книге.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...