棱镜WPF(MEF)-另一个壳中的壳
在我的应用程序中,我有几个重要的逻辑组件,我计划将它们创建为具有自己模块的不同棱柱壳。尽管它们目前可以是独立的模块,但我们可能会在稍后阶段收到一个请求,要求在一个大表单中启动它们。因此,如果发生这种情况,我将不得不启动棱镜“壳”,我现在将从更大的壳中编写。这可能吗?我可以在另一个shell中加载一个shell吗(可能类似于每个内部shell的选项卡)。如果我不能,什么是一般的替代方案或任何设计建议,我现在可以考虑。我仍处于应用程序的设计阶段,如果PRISM一旦实现后变得非常僵硬,我可以离开它。为了在单独的窗口上加载每个Shell,您可以查看以下帖子,其中显示了创建多Shell应用程序的PRISM-v2中的一个示例。但是,将其应用于棱镜4将非常简单:棱镜WPF(MEF)-另一个壳中的壳,wpf,prism,Wpf,Prism,在我的应用程序中,我有几个重要的逻辑组件,我计划将它们创建为具有自己模块的不同棱柱壳。尽管它们目前可以是独立的模块,但我们可能会在稍后阶段收到一个请求,要求在一个大表单中启动它们。因此,如果发生这种情况,我将不得不启动棱镜“壳”,我现在将从更大的壳中编写。这可能吗?我可以在另一个shell中加载一个shell吗(可能类似于每个内部shell的选项卡)。如果我不能,什么是一般的替代方案或任何设计建议,我现在可以考虑。我仍处于应用程序的设计阶段,如果PRISM一旦实现后变得非常僵硬,我可以离开它。为
问候。为了给您更好的支持,如果您能帮助我更好地理解您描述的场景,我将不胜感激。当你谈论不同的shell时,你是指在不同的窗口中启动它们吗?或者您只需为每个壳使用一个选项卡?如果是最后一个选项,shell的行为与在每个单独的选项卡区域上使用视图有什么不同?您好,谢谢您的回复。目前,我计划为每个组件使用不同的窗口。但我担心以后可能会有人要求我把这些单独的窗口改成一个大窗口,将所有不同的组件都放在标签内。谢谢你,帕德马亚。不过我还有一个问题:这些壳是否完全独立?我的意思是,不同的外壳和逻辑模块会在它们之间通信吗?或者它们的行为会像单独的应用程序一样吗?主要是,我想知道您是否会为每个Shell及其模块配备一个单独的引导程序,然后您会将所有内容统一到一个主引导程序中,我担心这并不是很直观地完成的。我们不确定最终的应用程序会是什么样子。我们现在想发布独立的模块(带有它们自己的shell),如果我们知道有很多东西应该共享,我们将把它们放在一个shell中。目前我们没有任何东西可以在模块之间共享。