学习笔记(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");
相关推荐
nashane1 小时前
HarmonyOS 6.0 分布式数据实战:KVStore跨设备同步与高性能查询指南(API 11 Stage模型)
wpf·harmonyos 5
Tutankaaa8 小时前
从被动接受到主动挑战:知识竞赛如何重塑学习价值
人工智能·经验分享·笔记·学习
房开民8 小时前
modbus相关学习
网络·学习
STC_USB_CAN_805110 小时前
菜单学习,科学计算器使用【TFT240*320彩屏+实际键盘】@Ai8051U,ST7789
单片机·学习·51单片机
三棱球10 小时前
App逆向学习笔记(三)——Android开发入门课
android·笔记
handler0110 小时前
拒绝权限报错!三分钟掌握 Linux 权限管理
linux·c语言·c++·笔记·学习
xiaotao13110 小时前
02-机器学习基础: 无监督学习——scikit-learn实战与模型管理
学习·机器学习·scikit-learn
阿Y加油吧11 小时前
算法实战笔记:LeetCode 169 多数元素 & 75 颜色分类
笔记·算法·leetcode
ouliten11 小时前
cuda编程笔记(39)--Asynchronous Barriers(异步屏障)
笔记·cuda
U盘失踪了11 小时前
Go 结构体
笔记·golang