WPF+Prism 模块化编程(一)

这篇具有很好参考价值的文章主要介绍了WPF+Prism 模块化编程(一)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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


一、Prism项目创建安装

1、新建WPF项目,创建基于 .NET Framework 框架的应用程序,项目名称为 PrismModelDemo,创建步骤如下所示。
WPF+Prism 模块化编程(一),WPF,wpf,Prism
WPF+Prism 模块化编程(一),WPF,wpf,Prism
项目创建完成后,新建Views文件夹和ViewModels 文件夹,移动 MainWindow.xaml 至 Views文件下,在ViewModels文件中新建 MainWindowViewModel.cs, 最终将自动生成的项目目录调整至如下所示:
WPF+Prism 模块化编程(一),WPF,wpf,Prism
注意事项:移动 MainWindow.xaml 至 Views文件后需要修改两个地方的文件路径,App.xml StartupUri=“MainWindow.xaml” 改成 StartupUri=“Views/MainWindow.xaml”,MainWindow.xaml 中 x:Class=“PrismModelDemo.MainWindow” 改为 x:Class=“PrismModelDemo.Views.MainWindow” ,修改后如下图所示:

WPF+Prism 模块化编程(一),WPF,wpf,Prism
WPF+Prism 模块化编程(一),WPF,wpf,Prism

二、将项目升级为Prism项目

1、打开NuGet依赖包管理界面,搜索 Prism,选择 Prism.Unity 安装。
WPF+Prism 模块化编程(一),WPF,wpf,Prism
2、Prism框架的MVVM绑定方式
在 MainWindow.xmal中添加Prism空间引用和自动绑定功能属性开启,这里我们注意的是,所用程序的视图模型均以ViewModel为结尾,并且存放路径为 ViewModels文件夹。

WPF+Prism 模块化编程(一),WPF,wpf,Prism
3、测试ViewModel是否成功绑定
在MainWindow.xmal后台窗体加载事件输出当前窗体绑定的视图文件。设置断点,运行程序,查看变量是否为对应视图文件。
WPF+Prism 模块化编程(一),WPF,wpf,Prism

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

1、修改启动程序的继承类,将继承 Application 的对象修改为 PrismApplication ,前后端修改如下所示:
WPF+Prism 模块化编程(一),WPF,wpf,Prism
WPF+Prism 模块化编程(一),WPF,wpf,Prism
2、修改完成后直接生成应用程序,提示App未实现两个抽象类,点击Teb 自动实现后修改如下,实现 PrismApplication 接口方法,将主窗体实例化后回传到接口,然后删除前端的启动属性绑定的启动窗体。

WPF+Prism 模块化编程(一),WPF,wpf,Prism
WPF+Prism 模块化编程(一),WPF,wpf,Prism
至此,我们完成了一个WPF+Prism 模块化编程的项目结构。文章来源地址https://www.toymoban.com/news/detail-844985.html

到了这里,关于WPF+Prism 模块化编程(一)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • JavaScript中的模块化编程

    JavaScript是一种强大的编程语言,它可以在浏览器中进行客户端脚本编写,并且在服务器端也有广泛的应用。随着JavaScript应用的增多,JavaScript代码的复杂度也不断增加。为了提高代码的可维护性和重用性,模块化编程变得越来越重要。本文将讨论JavaScript中的模块化编程,包括

    2024年02月02日
    浏览(30)
  • Python面向对象编程,实现模块化开发

    面向对象编程(Object Oriented Programming,OOP)是一种编程范式,它将真实世界中的事物抽象成程序中的对象,并通过对象之间的相互作用来完成程序的逻辑。 封装 (Encapsulation) 封装是指把数据和行为结合成一个相对独立的整体,防止程序中其他部分直接访问或修改这个整体,而

    2024年02月05日
    浏览(68)
  • 基于Keil a51汇编 —— 模块化编程

    许多程序太长或太复杂,无法作为一个单元编写。当代码被划分为小的功能单元时,编程变得更加简单。模块化程序通常比单片程序更容易编码、调试和更改。 模块化编程方法类似于包含大量电路的硬件设计。设备或程序在逻辑上分为具有特定输入和输出的“黑匣子”。一旦

    2024年02月07日
    浏览(29)
  • ES6模块化与异步编程高级用法

    目录 ES6 模块化 1、什么是 ES6 模块化规范 2、在 node.js 中体验 ES6 模块化 3、ES6 模块化的基本语法 Promise 1. 回调地狱 2、Promise 的基本概念 3、基于回调函数按顺序读取文件内容 4.、基于 then-fs 读取文件内容 4.1 then-fs 的基本使用 4.2 .then() 方法的特性 4.3 基于 Promise 按顺序读取文

    2024年02月16日
    浏览(27)
  • Python中的模块化编程与软件架构设计

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 在软件开发中,模块化编程和良好的软件架构设计是确保项目可维护性、可扩展性和可重用性的关键。Python作为一种灵活且功能丰富的编程语

    2024年04月29日
    浏览(23)
  • 前端技术栈 - ES6 - Promise -模块化编程

    ECMAScript 6.0(简称ES6)是JavaScript语言的下一代标准, 2015年6月发布. ES6设计目标: 达到JavaScript语言可以用来编写复杂的大型程序, 成为企业级开发语言. ECMAScript和JavaScript的关系就: ECMAScript是JavaScript的规范/规则, JavaScript是ECMAScript的一种实现. let.html +与,的区别 let_detail.html 细节1. l

    2024年02月11日
    浏览(42)
  • 函数探秘:深入理解C语言函数,实现高效模块化编程

    ✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:C语言学习 贝蒂的主页:Betty‘s blog 在数学中我们就知道了函数这个概念,而C语言同样引入了函数这个概念,那C语言的函数到底是什么样的呢? 在C语言中, 函数也叫子程序,它是一段可以

    2024年03月09日
    浏览(35)
  • 【C语言】扫雷小游戏详细分析(模块化编程)——内附源码

    . 🚀write in front🚀 🔎大家好,我是gugugu。希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎 🆔本文由 gugugu 原创 CSDN首发🐒 如需转载还请通知⚠ 📝个人主页:gugugu—CSDN博客 🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝​ 📣系列专栏:gugugu的系列专栏——

    2024年02月14日
    浏览(23)
  • STM32之智能小车,手把手从0到1,模块化编程

    本博文将会从0到1实现一个智能小车,该小车实现功能:1. 摇头避障模式、2. 跟随模式、3. 循迹模式、4. 小车测速并显示在OLED屏幕、5. 语音控制小车等等。 STM32F103开发板、小车套件、L9110S电机模块、超声波模块(HC-SR04)、sg90舵机、测速模块、循迹模块、红外避障模块等等(

    2024年02月01日
    浏览(30)
  • 【前端JS交互篇】函数、参数、返回值、闭包函数、递归函数、内存、模块化编程

    函数可以封装一些功能,可以供外部去重复的调用。所以,一般我们把函数叫做具有重复功能的代码块。 JavaScript 基础到高级 Canvas游戏开发 原生JavaScipt案例合集 JavaScript +DOM基础 假设饭店就是一个函数,饭店的功能就是做各种各样的菜,但是具体做什么菜,需要用户来点,用

    2024年02月15日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包