Prism CAG - WPF - 模块的新实例?它只是克隆实例吗?

时间:2009-06-17 13:44:59

标签: wpf prism

我正在使用Prism的CAG开发WPF应用程序。我想要实现的是创建模块的新实例(ModuleA)并将它们加载到TabControl中。 我能够使用moduleInfo对象实例化模块,并通过Assembly加载它们并调用CreateModule(type)方法。

我实际上可以在UI中看到不同的模块,但问题是当我开始与不同的模块交互时(例如,在范围区域中加载或卸载视图),所有活动似乎只发生在最后加载的模块上。

因此,例如我将ModuleA的2个'实例'作为2个TabItems,它们都有Load()新视图的命令按钮。当我选择第一个模块(通过选择第一个TabItem)并单击按钮以放置视图时,视图将加载到第二个模块中。

任何人都知道如何排序这个问题?让我相信,即使我在UI上看到'两个单独的模块,实际上只有一个实例或CreateModule创建克隆?

任何人?所有人都很感激!

1 个答案:

答案 0 :(得分:2)

正如Erik所解释的那样,加载模块和视图是Prism中非常不同的概念。

以下主题在理解这一点并处理类似于问题的方案时非常有用:

我希望这很有用。

谢谢, 达米安