学习笔记(prism--视频【WPF-prism核心教程】)--待更新

《一》框架介绍

prism是一个用于WPF...和winUI中构建的松散耦合,可维护和可测试的应用程序框架。帮助WPF开发人员以简化编写,维护和扩展来设计应用程序。

优点:遵循特定的约定,可自动将view/ViewModel建立DataContext的关系,同事默认支持多种容器依赖注入,以及强大的模块化和导航功能将应用变得更加灵活。

本视频主要包括:region(区域),module(模块),MVVM(视图注入),Event Aggregator(事件聚合器),Navigation(导航),Dialog(对话)。

《二》创建prism项目

方式一:创建WPF项目,然后导入prism的库,修改添加一部分代码,

方式二:创建prism blank App(WPF),则是创建自动添加了prism库。

《三》区域:Region(RegionManager)

弱化模块和模块之间的耦合关系:

可以不为其固定内容,将页面每个部分定于一个唯一区域,动态设置内容。

两种方式:

1.在xaml中使用

csharp 复制代码
<Grid>
	<contentControl prism:RegionManager.RegionName="ContentRegion" />
</Grid>

2.在代码中使用(X:name)

csharp 复制代码
//在xaml中取名称:
....x:Name="ctr"....
csharp 复制代码
//代码中
public MainViewModel(IRegionManager regionManager)
{
	 RegionManager.SetRegionName(ctr, "contentRegion");
}

RegionManager除定义区域外,还有一下功能:

维护区域集合,提供对区域的访问,合成视图,区域导航,定义区域

csharp 复制代码
//对区域的访问:
var region = regionManager.Regions("contentRegion");
相关推荐
AOwhisky4 小时前
Redis 学习笔记(第三期):持久化与主从复制
运维·数据库·redis·笔记·学习·云计算
问心无愧05134 小时前
ctf show web入门160 161
前端·笔记
Tbisnic5 小时前
AI大模型学习第十一天:技术选型、安全防护与金融实战
python·学习·ai·大模型·提示词工程
xmtxz6 小时前
计算机网络基础课程学习心得:从理论抽象到硬核实战的进阶之路
运维·学习
YM52e7 小时前
男孩子在外自我保护指南——用鸿蒙 ArkTS 构建交互式安全教育应用
学习·安全·华为·harmonyos·鸿蒙·鸿蒙系统
aXin_ya8 小时前
Ai Vibecoding学习(各个AI的讲解)
学习
乘~风8 小时前
408考研-计组-1.2计算机系统层次结构笔记+1.3计算机性能指标
笔记·考研·408
fanged8 小时前
Linux内核学习16--I2C子系统(TODO)
学习
.千余9 小时前
【C++】C++继承入门(下):友元、静态成员与菱形继承的底层逻辑
开发语言·c++·笔记·学习·其他
YJlio9 小时前
《Sysinternals实战指南》16.5 Ctrl2Cap 工具详解:把 Caps Lock 变成 Ctrl 的键盘改造与回退方法
linux·运维·服务器·网络·python·学习·计算机外设