0

我正在尝试实现以下模式,其中 ContentRegion 可以随时加载/激活 ModuleShellView 或 Module2ShellView。

Module2ShellView 没有对 View1 的引用,但由于 View1 已注册到 Region1,当该视图加载到 ContentRegion 时它被加载到 Module2ShellView 中,但我希望两个 ModuleShellViews 共享 View1 的同一实例。

我希望能够在两个 ModuleShellViews 之间切换

MainShell
--ContentRegion
----ModuleShellView
------Region1
--------View1
----Module2ShellView
------Region1
--------View1
4

1 回答 1

0

根据我的理解,您可能希望View1instance 对两者都可用ModuleShellViews。一种方法是在ContainerView1中注册为Singleton ,这样每次加载时,容器都会返回相同的实例。View1

您可以在以下Prism指南章节中找到有关View Registration的更多相关信息:

完成这种情况的另一种替代方法是与执行导航View1ContentRegion位置分离。下面是一个可能的视图树设计,它可以避免卸载和加载:View1

MainShell:
* Region1
  - View1
* ContentRegion
  - ModuleShellView
  - Module2ShellView

我希望这有帮助。

于 2013-10-08T15:09:04.960 回答