自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

猪猪的博客

WPF/Xamarin/MAUI/ASP.NET Core

  • 博客(57)
  • 问答 (1)
  • 收藏
  • 关注

原创 WPF InkCanvas 控件详解

InkCanvas 是 WPF 提供的一个手写绘图控件,它允许用户使用鼠标、触摸屏或手写笔在界面上进行绘图、标注等操作。

2025-03-26 23:00:28 1010

原创 WPF 布局中的共性尺寸组(Shared Size Group)

功能实现方式让多个 Grid 共享同一列/行的尺寸在或中设置属性启用共享尺寸功能设置使用限制仅适用于Auto尺寸的行或列。

2025-03-20 23:09:45 801

原创 WPF 中的 GridSplitter 详解

是 WPF 提供的一个控件,用于调整Grid布局的行或列的大小。它可以让用户在运行时拖动分隔线,以改变相邻的行或列的大小,而不需要修改 XAML 代码。功能方法调整行高放在行内,Height="5"。调整列宽放在列内,Width="5"。限制拖动范围设定MinHeightMinWidth防止过度拖动。控制调整方式使用RowsColumns)和设置拖动步长控制拖动时最小步长,提高调整体验。是 WPF 进行动态 UI 布局的重要工具,正确使用可以提升用户体验,使界面更加灵活。

2025-03-20 22:39:53 441

原创 WPF 布局舍入(WPF 边框模糊 或 像素错位 的问题)

在 WPF 开发过程中,可能会遇到界面模糊、边框错位、文本渲染不清晰等问题。这些现象通常是由于 WPF 采用设备无关像素(DIP, Device Independent Pixels),在不同 DPI 设置下,UI 元素的位置和大小可能会出现小数像素,导致渲染模糊。WPF 提供了布局舍入(Layout Rounding)机制,以确保 UI 元素的位置和大小对齐到整数像素,从而避免模糊问题。控件可能出现的问题解决方案所有控件位置错位、模糊字体模糊线条模糊Image图片缩放模糊边缘模糊。

2025-03-19 22:35:13 1231

原创 WPF 布局容器介绍(大全)

详细介绍wpf布局原则 WPF布局容器

2025-03-13 14:39:06 116

原创 WPF XAML(二)

本文是 WPF XAML(一)的续文,链接我就放下面了。WPF XAML(一)-优快云博客。

2024-01-14 13:18:55 1173

原创 WPF XAML(一)

问:XAML的含义是什么?为什么WPF中会使用XAML?而不是别的?答:在XAML是基于XML的格式,XML的优点在于设计目标是具有逻辑性易读而且简单内容也没有被压缩。其中需要提一下XAML文件在 Visual Studio (VS) 编译时,是会被转换为BAML。BAML最终会以资源的形式嵌入到DLL或者EXE程序集中。由于BAML是标记化的,所以在程序运行时能够被更快的解析。

2024-01-11 21:40:40 1489

原创 C# 2中的一些小特性

局部类型、局部方法、静态类、属性的访问分离、命名空间别名、编译指令、固定大小缓存区、InternalsVisiblTo

2024-01-04 22:15:46 1069

原创 深入解析 迭代器

迭代器是包含迭代器块,通常是方法或者是属性。迭代器通常返回类型都是IEnumerable或IEnumerable类型的方法或属性,每个迭代器都有一个生成类型,返回类型是非泛型时则为Object类型,是泛型时则是返回泛型的类型实例类型。如IEnumerable则返回的类型就是int。yield return 在迭代器中代表返回某一个值 如 yield return 1就是返回1这个数值。yield break 则代表终止迭代器的进行。

2024-01-03 20:54:21 445

原创 深入解析 可空值类型

问:为什么会有可空值类型的诞生?答:应对在某些特定场景中获取的信息可能是不完整的。

2024-01-01 13:20:09 985

原创 Visual Studio 任务列表

视图—任务列表 (CTRl+w+t)帮助我们快速找到注释位置(用在需要反复查找修改的地方)使用//todo:注释的内容就会显示在任务列表中。打开 “环境” 文件夹,然后选择 “任务列表”。在 “工具” 菜单上,选择 “选项”。

2023-12-31 15:23:42 752

原创 深入解析泛型

在C#1 中我们还没有泛型的时候我们收集数据通常需要使用到数组,或者使用封装好的数组集合Hashtable ArrayList。举个例子:我们在读取文件的时候就会需要一个数组来储存读取的数据的内容 但我们并不知数据的具体长度也就无法在声明的时候附上准确的数组长度。这时我们可以使用一种较为繁琐的方法 就是声明一个数组,如果当前的数组已经被填满,那么将当前数组的数据复制到一个更加大的数组当中 ,直到数组没有被填满就将当前数组的实际有效内容复制到一个正好大小的数组当中。

2023-12-31 13:38:09 1062

原创 C#语言发展历程(1-7)

X = x;Y = y;// 尝试修改结构的属性值,将会引发编译错误// 结构的属性值无法修改,因此下面的赋值操作是创建了一个新的Point实例示例解释:上述代码中,我们创建了一个Point对象,打印了它的坐标,并尝试修改它的属性值。由于Point是不可变的结构,所以修改属性值的操作会导致编译错误。然后,我们创建了另一个Point对象p2,并将其赋值给p3。由于结构是不可变的,所以赋值操作实际上是创建了一个新的Point实例。

2023-12-30 16:47:43 1146

原创 C# LINQ

一、前言二、LINQ to XML三、LINQ查询语法四、LINQ方法语法五、LINQ排序查询结果七、聚合运算符八、单值选择查询九、多级排序十、扩展 1 分组查询 2 Join查询

2023-12-26 22:32:15 480

原创 Json和Xml

详细介绍Xml和Json的含义以及互相转换的方式。创建Xml模式,最后C#对xml的读取修改保存等操作介绍。XPath搜索XML文件(含图文解释)

2023-12-24 10:54:17 621

原创 C#文件操作(二)

FileStream 读取文件 写入文件StreamWriter 创建StreamWriter 对象 写入文件StreamRead 读取文件异步文件访问读写压缩文件监控文件

2023-12-21 15:43:02 233

原创 C#文件操作(一)

操作文件的相关类、File和Directory类、File 类、 Directory类、FileInfo类、DirectoryInfo 类、相对路径与绝对路径

2023-12-20 22:43:42 288

原创 高级桌面编程(二)

DependencyProperty.Register静态方法介绍、FrameworkPropertyMetadata介绍

2023-12-19 22:15:42 106

原创 高级桌面编程(一)

创建控件并设置样式 样式 Style 模板 Template 创建资源字典触发器动画

2023-12-18 22:53:32 136

原创 C# 基本桌面编程(二)

本章为C# 基本桌面编程技术的第二节也是最后一节。前一节在下面这个链接C# 基本桌面编程

2023-12-17 21:28:16 453

原创 C# 基本桌面编程(一)

前言、XAML、名称空间、代码隐藏文件、属性、依赖属性、附加属性、事件、处理事件、路由事件、路由命令、控件类型、

2023-12-15 21:00:26 243

原创 高级C#技术(二)

匿名类型动态查找高级方法参数可选参数命名参数Lambda表达式复习匿名方法把lambda表达式用于匿名方法lambda表达式的参数lambda表达式的语句体lambda表达式用作委托和表达式树lambda表达式和集合

2023-12-13 22:21:11 533

原创 高级C#技术(一)

::运算符和全局名称空间限定符、定制异常、事件、事件的含义、处理事件、定义事件、特性、读取特性、创建特性、初始化器、对象初始化器、集合初始化器、类型推理、匿名类型、动态查找、高级方法参数、可选参数、命名参数、Lambda表达式、复习匿名方法、把lambda表达式用于匿名方法、lambda表达式的参数、lambda表达式的语句体、lambda表达式用作委托和表达式树、lambda表达式和集合

2023-12-11 16:51:18 291

原创 C#泛型(详解)

介绍C# 入门经典第8版书中的第12章《泛型》

2023-12-06 14:46:24 1913

原创 C#集合、比较、转换

框出的几个接口,在 System.Collections 命名空间下,这几个接口提供了,基本的集合功能。我将解释框柱的四个接口,后文会介绍其他的。C#中的集合一般用于处理对象列表,功能比简单的数组要多,功能大多数是通过System.Collection 名称空间中的接口而获得的。我们可以在对象浏览器中找到(快捷键 Ctrl+W+J)

2023-11-29 10:58:22 1355

原创 C# 设计模式-----抽象工厂设计模式

象工厂模式是一种创建型设计模式,旨在提供一个接口,用于创建一系列相关或相互依赖的对象,而无需指定具体的类。它可以帮助我们实现可扩展、灵活的代码结构,将对象的创建与使用分离,同时也符合面向对象设计的开闭原则。

2023-11-28 17:12:04 94

原创 C# 设计模式-----单例模式(Singleton)

访问只需要通过,Singlton.Instance 为何称它为单线程的Singlton因为 在多个线程同一时间访问 Instance属性时,首先访问的线程在判断instance为null时则,进入创建对象实例,在创建的过程中,又一个线程对属性进行访问,此时instance还是为null ,所以会同时可能创建多个实例。只需要保证核心是:如何控制用户使用new对一个类的实例构造器的任意调用。如何绕过常规的构造器,提供一种机制来保证一个类只有一个实例?,才能确保它们的逻辑正确性、以及良好的效率。

2023-11-26 11:49:02 518

原创 功能“合并赋值”在 C 7.3 中不可用。请使用 8.0 或更高的语言版本。

Microsoft Visual Studio 报错功能“合并赋值”在 C 7.3 中不可用。请使用 8.0 或更高的语言版本。

2023-11-16 15:06:30 464

原创 工作日志- - -自定义控件(详解)

详细介绍WPF 中:自定义控件,文章内容包含: 创建自定义控件类1.1绘制自定义控件外观1.2添加自定义控件的依赖属性1.3当前效果图1.4 添加自定义控件的事件1.5 创建lcommand类型的依赖属性1.6 创建自定义控件的事件1.7 创建自定义控件的Command1.8 创建自定义控件的依赖事件

2023-11-09 16:34:14 250

原创 WPF 依赖属性

WPF 依赖属性的使用,简单明了的教程

2023-08-01 13:46:01 100

原创 WPF 实现鼠标拖动来控制 控件排序(ListView 做示例)

本文使用到了 gong-wpf-dragdrop扩展包

2023-06-19 16:10:35 1426 1

原创 C# Task的使用 详细介绍(含同步异步解释)

C# Task的使用 详细介绍(含同步异步解释) 有些是网上搜索后自我转换后 记录的笔记

2023-06-14 17:17:36 2528

原创 C# 使用NPOI 设置保存的表格样式

C#使用NPOI设置表格样式 方法 参考过NPOI的使用方法

2023-05-29 14:50:49 3413

原创 实习笔记 C# 集合中的一些扩展方法(LINQ的扩展方法解析)

LINQ(Language Integrated Query)是一种在C#中实现的查询语言,它可以使开发者更方便地从数据源(如数组、集合、XML文档、数据库等)中获取数据。使用LINQ,开发者可以将查询表达式嵌入到C#编程语言中,而不必学习专门的查询语言(如SQL)。

2023-03-30 16:46:59 461

原创 C# 定义泛型类型

c# 1约束泛型、2 从泛型类中继承、3泛型运算符、4泛型结构、5定义泛型接口、6定义泛型方法、7定义泛型委托、8定义泛型类

2023-03-27 17:25:33 825

原创 Prism 事件聚合器Event--实现订阅-发布-接收

C# 语言中WPF 开发中框架 Prism 中的 事件聚合器Event,含简要的在Vs中的查找变量的堆中地址和栈中地址

2023-03-15 11:55:43 1153

原创 Visual Studio 2022 中自定义代码片段-C#图示详解

本文章主要讲解Visual Studio中自定义自己的代码片段,提高编译效率

2023-03-07 11:09:17 2881

原创 C#入门经典第8版 第十章 定义类成员

本章包含定义成员,定义字段,定义方法,定义属性,元组析构

2023-03-04 21:50:53 138

原创 Prism 框架 -含ViewModelLocator

指定视图绑定的上下文ViewModel注册视图时指定命名空间使用ViewModelLocator 自动查找或是自定义搜索方式指定控件容器的DataContext、或是指定控件的ViewModel

2023-03-02 16:48:05 1164 1

原创 C# 入门经典第8版 前6章知识归纳

Csharp 字面值(书 P30)Csharp 二进制字面值与数字分割(书 P31)Csharp 转义符(书 P31)Csharp 表达式(书 P32)Csharp Uising 当中static(书 P37)Csharp Goto关键字(书 P46)Csharp 枚举(书 P61)Csharp 结构(书 P64)Csharp 多维数组(书 P71)Csharp 数组的数组又称锯齿数组(书 P72)Csharp 字符串的处理(书籍73-76)都是方法 暂时不做解释C# 关键字 When p69 checke

2023-02-21 11:50:08 391 1

WPF有趣移动窗体,在你的屏幕上随机移动,且有移动动画

WPF有趣移动窗体,在你的屏幕上随机移动,且有移动动画

2023-12-16

C# WPF Com口通讯

在WPF中实现COM口通讯

2023-11-22

WPF Prism框架学习文章源码

WPF Prism框架学习文章源码

2023-03-02

C#中WPF导入excel表格导出Datagrid表格数据

我们在程序开发当中,在做数据收集时,难免会遇到程序当中的一些数据处理,如将数据收集,分类或计算,我们通常有时的需求需要对数据进行一个保存。保存当中我们可以采用很多形式如 储存在数据库当中 储存为xml文件 储存为表格文件 其中程序实现了导入excel表格以及导出excel表格

2023-02-21

Prism DelegateCommand的详细使用文章的源码程序

Prism DelegateCommand的详细使用 我自己发表中的文章 所附带的源码程序

2023-02-04

WPF 中实现截图(含保存效果)

WPF 中实现截图(含保存效果) 文章中的程序源码

2023-01-26

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

TA关注的人

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