学习笔记(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");
相关推荐
算法与双吉汉堡30 分钟前
【短链接项目笔记】Day1 用户模块
java·spring boot·笔记·后端
有为少年31 分钟前
带噪学习 | Ambient Diffusion (NeurIPS 2023) 上篇
人工智能·深度学习·神经网络·学习·机器学习·计算机视觉·生成模型
啃火龙果的兔子34 分钟前
Java 学习路线及学习周期
java·开发语言·学习
Thexhy40 分钟前
CentOS7安装Redis全攻略
linux·经验分享·redis·学习
大白的编程日记.42 分钟前
【计算网络学习笔记】TCP套接字介绍和使用
网络·笔记·学习
深蓝海拓1 小时前
PySide6从0开始学习的笔记(七) 控件(Widget)之文字输入类控件
笔记·python·qt·学习·pyqt
重生之我在番茄自学网安拯救世界1 小时前
网络安全中级阶段学习笔记(八):upload靶场实战(1-13关)-文件上传漏洞绕过1
笔记·学习·网络安全·文件上传漏洞·靶场实战
一过菜只因1 小时前
Git入门学习
git·学习
承渊政道1 小时前
C++学习之旅【C++内存管理、模板初阶以及STL简介】
c++·学习·visual studio
遇印记1 小时前
java期末复习(构造方法和成员方法,重写和重载)
java·开发语言·学习