1

我有一个带有列表的窗口,单击列表条目将显示一个新窗口,以显示该项目的详细视图

在 MVVM 中执行此操作的最简洁方法是什么?我想只做一个 container.Resolve<IViewType>().Show() 并让 Unity 创建所有依赖项,但只是调用 Show() 听起来不是 MVVM。我应该创建某种 WindowService 管理器类还是会有点矫枉过正?代码可以调用哪一层代码Show()

其次,我如何将参数(例如 CustomerID 和 ProductID)从初始视图模型传递到将附加到正在显示的新窗口的新视图模型?

4

2 回答 2

0

我将这种方法用于与 MVVM 的对话。

我现在要做的就是从我的视图模型中调用以下内容。

var result = this.uiDialogService.ShowDialog("Dialogwindow title goes here", dialogwindowVM);
于 2012-11-05T07:54:38.373 回答
0

我通常更喜欢创建一个 NavigationService 来处理实例化窗口和视图模型并将视图模型设置为数据上下文。然后你可以从你的父视图模型中调用它,它们是解耦的。

于 2012-11-04T06:51:22.687 回答