我正在使用 Prism 的 CAG 开发 WPF 应用程序。我想要实现的是创建模块(ModuleA)的新实例并将它们加载到 TabControl 中。我能够使用 moduleInfo 对象实例化模块并通过 Assembly 加载它们并调用 CreateModule(type) 方法。
我实际上可以在 UI 中看到不同的模块,但问题是当我开始与不同的模块交互时(例如在作用域区域中加载或卸载视图),所有活动似乎只发生在最后加载的模块上。
因此,例如,我将 ModuleA 的 2 个“实例”作为 2 个 TabItems,并且它们都有用于 Load() 新视图的命令按钮。当我选择第一个模块(通过选择第一个 TabItem)并单击按钮加载视图时,视图将加载到第二个模块中。
有谁知道如何解决这个问题?让我相信,即使我在 UI 上“看到”两个单独的模块,实际上只有一个实例或者 CreateModule 创建了克隆?
任何人 ?所有帮助表示赞赏!