自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 WPF prism

Prism框架集成与MVVM模式实践摘要 Prism是一个功能强大的WPF MVVM框架,本文介绍了其核心配置方法。首先需要安装Prism.DryIoc包并修改App.xaml文件,继承PrismApplication基类。然后实现CreateShell()方法返回主窗口,并通过RegisterTypes()方法注册依赖项。Prism Template Pack扩展提供了项目模板和代码片段(如propp、cmd等),大幅提升开发效率。 在MVVM实现方面,Prism通过BindableBase提供属性通知,

2025-05-29 11:06:42 1082

原创 WPF MVVM Community Toolkit. Mvvm 社区框架

Community Toolkit.Mvvm 框架摘要 该框架是微软提供的MVVM开发工具包,主要功能包括: 基础功能:提供ObservableObject基类实现属性通知,RelayCommand简化命令创建 源生成器:通过特性自动生成代码(需.NET 8+) [ObservableProperty]自动生成属性 [RelayCommand]自动生成命令 命令系统:支持同步/异步命令(AsyncRelayCommand)和CanExecute条件 验证功能:继承ObservableValidator实现数

2025-05-21 15:10:17 1323

原创 C# 数据库 EF框架 (Entity Framework)

Entity Framework (EF) 是一个对象关系映射(ORM)框架,允许.NET开发人员通过.NET对象操作数据库,减少数据访问代码的编写,提升开发效率。EF支持两种版本:.NET Core(跨平台)和.NET Framework(仅Windows)。EF提供三种使用方式:数据库优先(Database First)、模型优先(Model First)和代码优先(Code First,推荐)。代码优先模式下,开发人员先编写代码,再生成数据库。EF通过特性(如[Table]、[Key]、[Requir

2025-05-16 14:40:51 1077

原创 C# LINQ查询技术

LINQ(Language Integrated Query)是C#中的一种查询技术,允许开发者使用类似SQL的语法操作多种数据源,如集合、数组、数据库和XML文档。LINQ提供了统一的编程模型,支持查询表达式和方法语法两种主要形式。查询表达式类似于SQL,而方法语法则使用扩展方法如 .Where() 和 .Select()。LINQ的核心组成部分包括数据源、查询变量、查询表达式、查询操作符和查询结果。常用操作包括筛选(Where)、投影(Select)、排序(OrderBy)、分组(GroupBy)和聚合

2025-05-15 11:53:15 1252

原创 WPF 常用布局控件的基础使用

Grid(网格布局)、 StackPanel(堆叠布局)、WrapPanel(换行布局)、DockPanel(停靠布局)、Canvas(绝对定位布局)、UniformGrid (均分网格)、 VirtualizingStackPanel(虚拟化布局)、Border(边框)、TabControl(选项卡)

2025-05-08 09:00:00 904

原创 窗体控件 <Window>的常用属性 和 <WindowChrome>自定义窗体样式的基础用法

(最小化、最大化、关闭)。简单说,就是用来"自己画"窗口外观,让你的 WPF 窗口不是死板的系统样式,而是能自由设计的炫酷界面。

2025-05-08 09:00:00 717

原创 WPF 触发器 Trigger

触发器(Trigger)是 WPF 中的一种机制:当某个条件满足时,自动改变控件的某些属性,比如颜色、大小、透明度等。换句话说,就是"如果……那么就……" 的一种规则。Trigger。

2025-05-07 08:54:19 1374

原创 WPF 绑定 Binding

在 WPF 中,是最核心的概念之一,它允许你将 UI 控件和数据模型之间建立连接,从而实现界面和数据的自动同步。

2025-05-07 08:51:00 896

原创 String 字符串基础和常用API

字面量:就是一种语法糖String a = new String(new char[] {‘a’,‘b’,‘c’,‘d’}) //调用构造函数创建可以使用 unicode 编码达到加密的目的使用@可以把地址中的 \ 不再转义字符串中对做了重载使其作用于拼接字符串。

2025-05-06 16:06:12 865

原创 C# 数组相关:不可变数组、多维数组、交错数组、隐式类型化数组、 数组协变、 Array类

不可变数组、多维数组、交错数组、隐式类型化数组、 数组协变、 Array类数组是引用类型;int[ ] 中 int 也是类型,所以数组可以认为是复合类型数组名最好加 s数组是集合,集合不一定是数组数组的元素 的类型 既可以是引用类型也可以是值类型;分别称为:引用类型数组 和 值类型数组。创建数组实例后,其每个元素都有默认值,string 的为空字符串,int 的为 0 ,bool 的为 false,引用类型的为 null;

2025-04-30 16:02:17 972

原创 C# 数据类型

i.在性能上,大型结构或经常需要复制的结构使用类可能更为高效,因为类是引用类型,而结构是值类型,复制类的引用比复制结构的数据更加高效。a.结构是值类型,而类是引用类型。如果不使用 New 操作符,只有在所有的字段都被初始化之后,字段才被赋值,对象才被使用。d.结构的构造函数必须包括所有字段的赋值,而类的构造函数不需要。f.在方法参数传递时,结构是通过值传递的,而类是通过引用传递的。结构和类相比,一般保存的数据量少,存储在栈上,读取速度比类快。c.结构的实例化不需要调用构造函数,而类的实例化需要。

2025-04-30 14:49:46 1255

原创 WPF 导航

在 中添加一个 Frame:在 后台跳转页面:比如在 :::隐藏 Frame 自带的导航栏。:让 Frame 记录自己的导航历史。:Page 保持实例,不每次都重新加载(否则每次跳回来都会重新创建)。 创建一个window窗体把 改为 把.cs 中的类继承改为 :NavigationWindow 在 xaml 中设置点鼠标击事件在 .cs 中设置事件 UriKind :是一个枚举,它定义了如何解释 URI 字符串::指定 URI 是一个绝对路径

2025-04-29 16:47:19 1298

原创 WPF App.xaml 合并资源

合并(MergedDictionaries)就是: 为了避免 App.xaml 太臃肿,把不同的资源(比如颜色、样式、控件模板)分别拆成多个。它里面的资源,所有窗口、控件都可以直接使用。└── ControlTemplates.xaml(控件模板资源)├── Styles.xaml (通用样式资源)├── Icons.xaml (图标字体资源)├── Brushes.xaml (颜色刷资源)就是你在 Brushes.xaml 里定义的。在 WPF 项目里,

2025-04-29 16:33:57 746

原创 SQL语言

returns int -- 返回值类型(如果没有返回值可以不写)asbegin-- {函数体end-- }go。

2025-04-28 10:24:30 962

原创 C# TCPListener \ TCPClient

确保数据发送(TCP 通常无需调用)。:将数据读入缓冲区,返回可读取的数量。:获取本地端点(IP 和端口)。:用 IP 地址和端口初始化。:阻塞直到有客户端连接,返回。:如果有待处理的连接,返回。:如果有可读数据,返回。:返回用于读写数据的。:从缓冲区写入数据。

2025-04-24 15:03:13 1275

原创 OSI 七层网络模型

SSL 虽然 已经不再推荐使用,但 TLS 仍然是现代网络通信中常用的加密协议,广泛应用于 HTTPS、邮件传输、VPN 等场景。它是 SSL 的继承者,协议: HTTP/HTTPS、FTP、SMTP、POP3、DNS、DHCP。协议/技术: NetBIOS、RPC、Named Pipes(命名管道)协议/标准: SSL/TLS、MIME、ASCII、JPEG、加解密。协议: IP(IPv4/IPv6)、ICMP、IPSec、IGMP。: 可靠、有序传输,面向连接(常用于 HTTP、FTP)

2025-04-24 14:36:30 1017

原创 C#,Winform 中GDI+ 技术的使用基础

GDI+ 则提供了更多先进的图形特性,如抗锯齿、透明度和渐变填充,适合现代 .NET 应用程序开发,尤其在需要高质量图形显示的场景中表现更佳。GDI(Graphics Device Interface)和 GDI+ 都是 Windows 提供的图形绘制接口,但它们有很多区别,GDI+ 是 GDI 的增强版,提供了更丰富的功能和更好的绘图效果。GDI+:软件渲染:大部分 GDI+ 绘图都是在软件层面完成,相对来说在性能上不如硬件加速的 GDI。:在指定位置并且按指定大小绘制指定的lmage 的指定部分。

2025-03-20 19:35:54 1157

原创 C# 方法的结构

不包含任何修饰符,将实参的值复制到形参的方式把数据传递,形参的改变不会影响到内存中实参的的值,实参是安全的。调用方法时,可以传递数组作为参数,也可以直接传递多个同类型的参数,编译器会自动将这些参数打包成一个数组。实参:实际参数

:小括号:方法参数列表,每个参数以英文逗号分割,格式:参数类型

参数名称。时,如果子类中的方法与父类中的方法具有相同的方法名、参数列表和返回类型,并且使用。由于参数数量可变,增加了方法的灵活性和通用性,减少了方法重载的需求。该方法为抽象方法,不包含具体实现细节,必须由子类实现。

2025-03-20 09:26:58 930

原创 C# 数组的用法

在某些情况下,即使某个对象不是数组的基类型,也可以把它赋值给数组元素。创建数组实例后,其每个元素都有默认值,string 的为空字符串,int 的为 0 ,bool 的为 false,引用类型的为 null;是 C# 中所有数组的基类,它是在 System 命名空间中定义 提供了各种用于数组功能的属性和方法。数组的元素 的类型 既可以是引用类型也可以是值类型;并返回所有满足特定条件的元素,然后将这些元素组成一个新 的数组返回。//查找是否存在于数组中,如果存在,返回元素。

2025-03-12 11:51:05 1246

原创 C# 类的结构

C#在设计字段这个概念时,其实是为了给类本身存储一些自身需要的数据,而不是为

了给类的实例存储一些数据。set)就是从完整属性简化而来的,所以自动属性支持的,完整属性都支持。GC 会定期扫描内存,发现不再使用的对象时,会先标记一下,下一次再扫描内存时,就会把所标记的对象的所占内存回收。如果一个类继承自抽象类,并且该抽象类中有抽象方法,那么子类必须实现这些抽象方法,除非子类本身也是抽象类。约定: 字段 --》构造函数 --》属性 --》方法。在需要使用这个类的地方,像使用普通类一样进行实例化和操作。

2025-03-10 14:42:02 1117

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除