Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
组织多个复合WPF应用程序以共享单个Shell_Wpf_Visual Studio_Prism_Cal_Cag - Fatal编程技术网

组织多个复合WPF应用程序以共享单个Shell

组织多个复合WPF应用程序以共享单个Shell,wpf,visual-studio,prism,cal,cag,Wpf,Visual Studio,Prism,Cal,Cag,如何组织多个复合WPF应用程序,使它们共享一个Shell项目,但从不同的App.config文件填充其模块目录 我正在使用WPF的复合应用程序指南编写一套应用程序。每个应用程序的功能由不同模块的可用性决定,这些模块在Shell的App.config中列出。通过给每个应用程序一个不同的App.config,我可以指定每个应用程序可以使用哪些模块 不过,我想在所有应用程序之间共享一个Shell项目,以获得通用的外观。最初,我为每个应用程序创建了一个解决方案,添加了Shell项目,然后添加了相关模块。

如何组织多个复合WPF应用程序,使它们共享一个Shell项目,但从不同的App.config文件填充其模块目录

我正在使用WPF的复合应用程序指南编写一套应用程序。每个应用程序的功能由不同模块的可用性决定,这些模块在Shell的App.config中列出。通过给每个应用程序一个不同的App.config,我可以指定每个应用程序可以使用哪些模块

不过,我想在所有应用程序之间共享一个Shell项目,以获得通用的外观。最初,我为每个应用程序创建了一个解决方案,添加了Shell项目,然后添加了相关模块。问题是,公共Shell项目只有一个App.config文件,我无法根据每个解决方案对其进行更改


通过代码填充目录并不能避免这个问题——Shell中仍然存在特定于应用程序的代码,这些代码必须通过我使用的解决方案以某种方式激活。

除了硬编码模块和从配置加载模块外,您还可以从给定目录动态加载模块

因此,为了设置使用同一外壳的不同“应用程序”,我会创建一个批处理文件,将每个应用程序的正确模块复制到单独的文件夹中,从而创建不同的应用程序


复合指南库文档详细介绍了如何设置项目以从目录动态加载模块。

除了硬编码模块和从配置加载模块外,您还可以从给定目录动态加载模块

因此,为了设置使用同一外壳的不同“应用程序”,我会创建一个批处理文件,将每个应用程序的正确模块复制到单独的文件夹中,从而创建不同的应用程序


复合指南库文档提供了更多关于设置项目以从目录动态加载模块的信息。

我决定将Shell视为自己的模块。每个应用程序都有自己的解决方案和项目,其中包含各个App.config文件。他们也有自己的引导程序类。每个应用程序中的引导程序都会实例化Shell。

我决定将Shell视为自己的模块。每个应用程序都有自己的解决方案和项目,其中包含各个App.config文件。他们也有自己的引导程序类。每个应用程序中的引导程序都实例化Shell