WPF+Prism 模块化编程(一)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

WPF+Prism 模块化编程(一)


一、Prism项目创建安装

1、新建WPF项目,创建基于 .NET Framework 框架的应用程序,项目名称为 PrismModelDemo,创建步骤如下所示。

项目创建完成后,新建Views文件夹和ViewModels 文件夹,移动 MainWindow.xaml 至 Views文件下,在ViewModels文件中新建 MainWindowViewModel.cs, 最终将自动生成的项目目录调整至如下所示:

注意事项:移动 MainWindow.xaml 至 Views文件后需要修改两个地方的文件路径,App.xml StartupUri="MainWindow.xaml" 改成 StartupUri="Views/MainWindow.xaml",MainWindow.xaml 中 x:Class="PrismModelDemo.MainWindow" 改为 x:Class="PrismModelDemo.Views.MainWindow" ,修改后如下图所示:


二、将项目升级为Prism项目

1、打开NuGet依赖包管理界面,搜索 Prism,选择 Prism.Unity 安装。

2、Prism框架的MVVM绑定方式

在 MainWindow.xmal中添加Prism空间引用和自动绑定功能属性开启,这里我们注意的是,所用程序的视图模型均以ViewModel为结尾,并且存放路径为 ViewModels文件夹。

3、测试ViewModel是否成功绑定

在MainWindow.xmal后台窗体加载事件输出当前窗体绑定的视图文件。设置断点,运行程序,查看变量是否为对应视图文件。

三、将Prism项目升级为支持模块化编程项目

1、修改启动程序的继承类,将继承 Application 的对象修改为 PrismApplication ,前后端修改如下所示:

2、修改完成后直接生成应用程序,提示App未实现两个抽象类,点击Teb 自动实现后修改如下,实现 PrismApplication 接口方法,将主窗体实例化后回传到接口,然后删除前端的启动属性绑定的启动窗体。


至此,我们完成了一个WPF+Prism 模块化编程的项目结构。

相关推荐
做个文艺程序员12 分钟前
MQ第12篇:AI原生消息架构演进:从MQ到事件驱动的全链路设计
架构·消息队列·wpf·事件驱动架构·ai-native·cqrs
donk13142 天前
React Native for OpenHarmony 实战:三方库 react-native-circular-action-menu 的鸿蒙化适配指南
javascript·分布式·react native·react.js·wpf·harmonyos
donk13143 天前
React Native for OpenHarmony 实战:三方库 react-native-step-indicator 的鸿蒙化适配指南
分布式·react native·react.js·wpf·harmonyos
He BianGu3 天前
【笔记】WPF中RenderOptions类的详细功能
笔记·wpf
VidDown3 天前
上线三个月后的第一次事故:一个 Django 服务的日志、监控与故障复盘
数据库·python·django·wpf·音视频·视频编解码
He BianGu3 天前
【笔记】WPF中CachingHint的功能
笔记·wpf
He BianGu3 天前
【笔记】在WPF中BitmapScalingMode的作用
笔记·wpf
Vae_Mars4 天前
幂等性学习笔记
笔记·学习·wpf
samble5 天前
从零搭建灌装监控系统(十九):单元测试实战,xUnit + 内存SQLite + 反射测试私有方法
c#·wpf·mvvm·modbus·工业控制
光泽雨5 天前
路由概念和路由事件 继承链路 RadioButton的事件解析
wpf