Мое приложение WPF имеет два вида, и каждый вид имеет свою собственную модель представления. В одном представлении отображаются все имена клиентов с левой стороны. Во втором представлении показан список предметов, заказанных выбранным клиентом (на первом виде) с правой стороны. Данные во втором представлении должны быть изменены автоматически на основе моего выбора на первом представлении (вид имен клиентов). Какие-либо предложения. Заранее спасибо.Общение между представлениями
ответ
То, что вы описываете, называется привязкой «Master-Detail». Общая идея заключается в том, что левый пользовательский вид списка клиентов (главный вид) будет привязан к ViewModel, содержащему список CustomerViewModels и выбранный CustomerViewModel. При изменении выбранного элемента в списке клиентов будет обновлен выбранный CustomerViewModel в ViewModel. Каждый из CustomerViewModel должен иметь коллекцию PurchaseViewModels, которая детализирует заказы клиента. Вид правой стороны (подробный вид) должен установить его DataContext для выбранного CustomerViewModel и использовать список покупок.
Вот устрашающе хорошо подходит проект для использования в качестве примера: http://www.codeproject.com/Articles/332615/WPF-Master-Details-MVVM-Application
- 1. Общение между представлениями
- 2. Ember.js - Общение между контроллерами и их представлениями
- 3. Общение между классами
- 4. Cocos2D - Общение между слоями
- 5. Общение между действиями (Android)
- 6. Общение между классами
- 7. Общение между Java-классами
- 8. Android Общение между классами
- 9. Общение между открытыми классами
- 10. Общение между двумя C# exe
- 11. Цель C: Общение между классами
- 12. mpi4py: Общение между порожденными процессами
- 13. Iphone SDK - Общение между объектами
- 14. React.js - Общение между родственными компонентами
- 15. IFrame и общение между ними
- 16. Передайте значение между представлениями
- 17. Связь между представлениями
- 18. Xcode, изменяющийся между представлениями
- 19. iOS - отношения между представлениями
- 20. Связь между представлениями
- 21. Значения переходов между представлениями
- 22. Передача объектов между представлениями
- 23. обмениваться данными между представлениями
- 24. Передача данных между представлениями
- 25. Передача переменных между представлениями
- 26. Хранить массивы между представлениями
- 27. Пролистать между представлениями ViewController
- 28. xcode передача переменных между представлениями
- 29. Доля области между представлениями/контроллером
- 30. Передача значений между представлениями MVC5
Посмотрите на использование среды, такие как Prism или MVVMLight или т.д. Они обычно обеспечивают некоторый способ для ViewModels общаться друг с другом. Например, Prism имеет интерфейс IEventAggregator (и поддерживающий класс). Это позволяет одному ViewModel «публиковать» уведомления, а другой - «подписываться» на уведомления. Издателю все равно, кто подписался, если какой-либо ViewModel. Абоненту все равно, кто публикует. Это позволяет ViewModels оставаться полностью развязанными. –