Prism七(Module模型加载方法)

目录

一 开发社区

二 上一章回顾

三 加载Module

四 项目引用方式——调试

五 Directory配置模块目录DLL引用——发布

六  App.Config配置模块目录

七 XAML配置模块目录

八 总结

九 下章预告


一 开发社区

Developer Blog
Learn
Developer Platform


二 上一章回顾

一 开发社区

二 上一章回顾

三 模块(Module)含义

四 创建模块APP应用(Create Module APP)

五 总结

六 下章预告


三 加载Module

在Prism当中, 有多种方式可以加载我们的模块, 如下所示:
Module Catalog

  1. (代码方式)Code
  2. (配置文件)App.config
  3. (磁盘目录)Disk/Directory
  4. (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!')  # 每日问候,跟大家问好!

🔥精品框架专栏:Prism专栏 WPF专栏 


🌞精品前端UI设计专栏:MaterialDesign专栏


💾精品后端数据库专栏:SqlServer专栏


 💻精品程序开发专栏  VisualStudio专栏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值