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 模块化编程的项目结构。

相关推荐
fogota3 天前
Emoji与Segoe MDL2 Assets的比较
c#·wpf
fogota3 天前
C# WPF 按钮加载字体图标 / 动物头像
c#·.net·wpf
fogota3 天前
C# WPF 按钮加载系统图标 / 动物头像
c#·.net·wpf
军训猫猫头3 天前
C# 封装 MySQL 自动写入与查询工具类(基于 MySqlConnector)
mysql·c#·.net·wpf
gis开发之家4 天前
Spring Boot 4 定时任务与异步线程池:从 @Scheduled 到高并发任务编排(生产级实战)
java·spring boot·后端·wpf·spring boot4
clz13145215 天前
如何设计一个优雅可靠的金融级联机接口
wpf
闲云自留地6 天前
云平台存储管理员:Cinder 创建挂载卷 + Swift 分布式存储原理
分布式·wpf·swift
敲代码的嘎仔7 天前
从集群锁失效到异步领券:我用分布式锁 + Redisson + MQ 把领券接口 RT 从 200ms 压到 15ms
java·数据库·redis·分布式·缓存·ai·wpf
闲云自留地7 天前
OpenStack 的身份管家:Keystone 令牌、RBAC 权限模型拆解
wpf·openstack
FuckPatience9 天前
WPF 窗体唤醒,判断是否已存在,存在则弹出
wpf