【发布时间】:2019-03-09 09:22:55
【问题描述】:
我观看了一个很棒的video,关于创建一个 DialogService 来负责在 MVVM 中打开对话框。由于 DialogService 构造函数以所有者(Window 类型)为参数,因此在 MainWindow 中创建 dialogService 很容易。只需在 App.xaml.cs 中分别为 MainWindow 创建一个 View 和一个 ViewModel 并连接所有东西。但问题是如何在从 MainWindow 打开的对话框中创建一个 dialogService(以从该对话框打开更多对话框),因为我无法获取从 MainWindowViewModel 打开的对话框的 View 实例。这是显示该对话框的方法。
private void ShowAdministrationDialog()
{
AdministrationDialogViewModel viewModel = new AdministrationDialogViewModel(this.context);
dialogService.ShowDialog(viewModel);
}
【问题讨论】: