Я пытаюсь сделать модальное диалоговое окно, чтобы позволить пользователю знать некоторые сообщения об ошибках или позволить пользователю редактировать некоторые значения.Я использую шаблон MVVM, поэтому в моем главном окне есть часть управления и часть рабочего пространства.В части рабочей области я открываю модели представления тесно с табличкой данных для представлений (определяемых как usercontrols).С одного из этих видов я хочу открыть модальное диалоговое окно.Я следовал за этим ответом Окно ошибки показывает модальное в MVVM WPF .Как описано в этом ответе, я реализовал DialogClass в InvoiceViewModel.Но у меня проблема с отображением содержимого модального окна.Если я установлю содержимое окна в класс ViewModel, вывод будет простой текст с путем к пространству имен к этой ViewModel.(ViewModel присоединяется к представлению с табличкой данных.) Если я устанавливаю содержимое для представления - оно работает - представление отображается, но я не подчиняюсь шаблону MVVM (открытие View из ViewModel, поскольку ViewModel не имеет ссылки на View).
ErrorViewModel newErrorViewModel = new ErrorViewModel();
ErrorView newErrorView = new ErrorView();
DialogWindow dialogWindow = new DialogWindow();
//Not Working
//dialogWindow.Content = newErrorViewModel;
//Working But, breaking MVVM
dialogWindow.Content = newErrorView;
dialogWindow.ShowDialog();
В ErrorView.xaml я прикрепил ErrorViewModel следующим образом.
<DataTemplate DataType="{x:Type vm:ErrorViewModel}">
<vw:ErrorView/>
</DataTemplate>
Что я делаю не так?
Спасибо.