随笔分类 - WPF学习
摘要:Prism:结语 prism基本功能也已经学完了,在学习过程中遇到过很多问题,其中就有一点条我就一直困惑,那就是:依赖注入 什么是依赖注入:(gpt写的) 依赖注入(Dependency Injection,简称 DI) 是一种设计模式和编程技术,用于实现控制反转(Inversion of Cont
阅读全文
摘要:Prism:事件聚合器 Prism框架提供了一个事件聚合器,可以帮助不同模块之间进行解耦和通信。开发人员可以通过发布和订阅事件来实现模块之间的交互。 IEventAggregator 松耦合基于事件通讯 多个发布者和订阅者 微弱的事件 过滤事件 传递参数 取消订阅 该功能主要作用为, 事件聚合器负责
阅读全文
摘要:Prism:对话框(Dialog) 应用背景 对话框实际上是我们应用程序经常用到的一个功能, 类如: Show、ShowDialog。可以弹出一个我们指定的窗口, 仅此而已。 Prism提供了一组对话服务, 封装了常用的对话框组件的功能, 例如: RegisterDialog/IDialogServ
阅读全文
摘要:Prism:导航(Navigation) 在普遍的业务场景当中, 必不可少的是页面切换, 而Prism就可以使用Navigation功能来进行页面导航, 在不同的场景当中会有各种用法, 例如在切换页面验证、传递参数、返回上一页、返回下一页等功能。 导航的基本条件 1.注册显示区域 2.注册导航页面
阅读全文
摘要:Prism:模块(module) 什么是模块? 本质上来说, 对于一个应用程序而言, 特定功能的所有View、Service等都可以独立存在。那么意味着, 每个独立的功能我们都可以称之为模块。 创建模块 自动创建,适应pack包,创建后默认版本是.Net6,Prism是8.1.97。(注意:与主程序
阅读全文
摘要:Prism:区域(Region) 什么是区域? 区域 (Region) 用于实现模块化应用程序中的视图组织和管理。区域允许您在一个或多个视图容器中动态地加载和卸载视图,从而实现灵活的内容布局和管理。 区域的用途 动态内容加载:您可以将不同的视图加载到同一个区域中,这样可以实现在运行时动态改变应用程序
阅读全文
摘要:Prism:框架介绍与安装 什么是Prism? Prism是一个用于在 WPF、Xamarin Form、Uno 平台和 WinUI 中构建松散耦合、可维护和可测试的 XAML 应用程序框架 Github https://github.com/PrismLibrary/Prism NuGet htt
阅读全文
摘要:WPF:MVVM的由来与属性绑定的过程 1、MVVM (1)MVVM是什么? MVVM(Model-View-ViewModel)是一种软件架构设计模式MVVM模式。有助于分离应用程序的业务逻辑和用户界面层,使得开发过程更易于管理,同时也便于单元测试。 Model? 现实世界中对象的抽象结果。
阅读全文
摘要:WPF:静态、动态资源以及资源词典 静态资源与动态资源 我们常常会使用样式或者控件模板放在Window.Resources中,比如这样: 静态资源与动态资源使用如下: <Window.Resources> <SolidColorBrush x:Key="SolidColor" Color="#FF0
阅读全文
摘要:WPF:DataTemplate 在XAML界面当中编写的任何代码, 其实本质上都是转化成C#代码, 既然如此来说, 只要XAML有的对象,我们都可以用C#代码编写, 但是为什么一般我们不这么做, 是因为XAML更加容易去表达界面上的元素, 代码的可视化以及可维护性。 需求:当我想要在ListBox
阅读全文
摘要:WPF控件结构 WPF中控件继承图 我们平时所用的容器如Grid、StackPanel等都是继承Panel 控件类型分为3组:内容控件、Items控件、TextBoxBase 如何理解Content? 凡是继承ContentControl的控件,定义内容为Content,除了TextBlock用te
阅读全文
摘要:WPF布局 WPF布局基础 布局原则 一个窗口中只能包含一个元素 不应显示设置元素尺寸 不应使用坐标设置元素的位置 可以嵌套布局容器 布局容器 StackPanel: 水平或垂直排列元素、Orientation属性分别: Horizontal / Vertical. WrapPanel : 水平或垂
阅读全文