Я пытаюсь создать стратегию обработки всплывающих форм для использования в любой части моего приложения. До сих пор я понимаю, что мне понадобится один UserControl
в корне моего MainWindow. Это будет связано с его собственным ViewModel, который будет обрабатывать сообщения, отправленные в приложении.
Я использую MVVM Light, и я довольно новичок в классе Messenger
.
Представьте себе сценарий "Мастер/Подробности", где список объектов содержится в ListBox
. При выборе одного из этих элементов и нажатии кнопки "Редактировать" отобразится UserControl
, который охватывает весь экран. Затем пользователь может отредактировать выбранный элемент и нажать "ОК", чтобы зафиксировать изменения.
Я хочу, чтобы UserControl
был открыт как "общий" таким образом, чтобы я мог на него набросить (возможно, ViewModel)... чтобы он отображал ViewModel с помощью DataTemplate
и обрабатывал все изменения объектов. Щелчок по ОК вызывает обратный вызов для класса отправки и сохраняется как и раньше.
В некоторых ситуациях, когда это было бы полезно,...
- Отображать сообщения об ошибках без ввода пользовательского ввода (кроме OK, чтобы закрыть его)
- Отобразить форму редактирования для элемента данных.
- Диалоги подтверждения (как и стандартный MessageBox)
Может ли кто-нибудь предоставить какие-либо образцы кода, как я мог бы это сделать?