目录
一 开发社区
Developer Blog
Learn
Developer Platform
二 上一章回顾
一 开发社区
二 上一章回顾
三 模块(Module)含义
四 创建模块APP应用(Create Module APP)
五 总结
六 下章预告
三 加载Module
在Prism当中, 有多种方式可以加载我们的模块, 如下所示:
Module Catalog
- (代码方式)Code
- (配置文件)App.config
- (磁盘目录)Disk/Directory
- (XAML定义)XAML
(自定义)Custom
Register Catalog with PrismApplication
Register Modules with Catalog
四 项目引用方式——调试
项目右键→添加→项目引用,选中需要引用的ViewModule
添加需要模块的加载文件,并引入对应命名空间
加载时,可直接设置初始化模式为OnDemand懒加载模式
moduleCatalog.AddModule<ScheduleProfile>("Schedule", InitializationMode.WhenAvailable)→
moduleCatalog.AddModule<ScheduleProfile>("Schedule", InitializationMode.OnDemand);
五 Directory配置模块目录DLL引用——发布
通过读取根目录Modules文件夹查找模块
在主项目创建Modules文件夹,选中项目→右键属性→生成→输出→输出的基路径选择主项目\Modules,这样每个Module的DLL会直接生成在Modules/Debug文件夹,选择始终复制到输出目录
重写IModuleCatalog方法
此处的.指代主项目目录,路径为实现了Imodule接口的DLL所在路径
需要在继承Imodule接口的项目文件中,指定模块特性为懒加载
[Module(ModuleName = "Charge", OnDemand = true)]
六 App.Config配置模块目录
然后,为应用程序添加配置文件app.config, 添加以下内容:
<configuration>
<configSections>
<section name="modules" type="Prism.Modularity.ModulesConfigurationSection, Prism.Wpf" />
</configSections>
<startup>
</startup>
<modules>
<module assemblyFile="ModuleA.dll" moduleType="ModuleA.ModuleAModule, ModuleA, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" moduleName="ModuleAModule" startupLoaded="True" />
</modules>
</configuration>
七 XAML配置模块目录
修改CreateModuleCatalog方法, 从指定XAML文件读取模块配置
创建模块名为ModuleCatalog.xaml文件, 添加模块信息
八 总结
以上就是Prism中加载Module模块的过程,本文仅仅简单介绍了Module加载过程,仅用来帮助学习理解,而在实际生产环境中我们可以根据需要将生成的模块加载到我们的Prism主程序中,如何在模块当中定义视图, 并且作为依赖项注入, 最终显示在应用程序指定的Region中。这将在我们下一章中详细展开。
九 下章预告
下一章我会教大家视图注入的方法
博主RaymondLeigh:如果您觉得本文为您提供了结局思路或解决了您的实际问题,麻烦您🙏帮忙点赞、收藏、评论、关注一键四连,您的举手之劳将为我写作提供动力源泉!🤞
print('Hello,RaymondLeigh!') # 每日问候,跟大家问好!
🌞精品前端MaterialDesign专栏:MaterialDesign专栏
💾精品后端SqlServer专栏:SqlServer专栏
💻