如何使用 Prism 从我的视图模型中访问我的视图?

How do I access my view from within my view model with Prism?

我将 Prism 用于 MVVM。在我的主 window 中,我有一个功能区菜单和一个显示我所有视图的选项卡控件。我希望能够根据当前选择的视图使用上下文命令动态更新我的功能区。绑定比简单的命令列表更复杂(每个命令都有一个图标、子命令、不同的大小、分组等),所以我想我需要以某种方式在主视图模型中获取对我的功能区控件的引用,所以我可以编程 add/configure 我的功能区命令。如何从视图模型中获取对视图的引用?

How do I get a reference to the view from within the view model?

使用 i:Interaction.Behaviors 将视图的 Loaded 事件附加到视图模型上的命令并将视图作为参数传递。

然后,在为此编写测试套件时发疯。如果我是你,我会在将视图类型强制到视图模型之前做其他所有事情...