0

我正在开发一个 WPF 地图应用程序,并且我在我的 MVVM WPF 应用程序中有一个 View 和一个 ViewModel。用户单击视图中的按钮(我们称之为 View#1),然后 ViewModel 将地图添加到窗口中。但是,我的应用程序中有另一个视图(我们称之为 View#2)负责地图操作。我无法将 View#2 中使用的控件添加到 View#1,因为 View#1 只是一个具有不同地图名称的列表框。

我希望 View#2 从 ViewModel#1 初始化并显示在屏幕上。

这种方法是否违反了从不同 ViewModel 初始化 View 的良好 MVVM 编程实践?如果是,那么处理这些情况的正确方法是什么。

谢谢

4

1 回答 1

1

通常您将视图模型注入您的视图中,因此您只能在一个视图模型上拥有一个视图。

但是你可以有一个包含 View#1 和 View#2 的 View#0。ViewModel#0 将有 2 个包含 ViewModel#1 和 ViewModel#2 的属性

于 2013-10-24T05:49:12.967 回答