- 博客(92)
- 收藏
- 关注
原创 C# WPF 左右布局实现学习笔记(1)
Utilties:用于存放自定义控件,命令父类,ViewModel父类,DataTemplate.xaml,通用工具类。添加RelayCommand.cs,ViewModelBase.cs,DataTemplate.xaml。MainPageViewModel.cs,在View目录下存在MainPage.xaml。ViewModel:用于存放所有ViewModel类,连接Model、View,VM层。Model:用于存放与业务逻辑或数据相关的类,M层。View:用于存放用户界面的,V层。
2025-06-06 22:39:47
608
原创 Redis学习笔记
此处使用了默认的redis.windows-service.conf,IP地址为127.0.0.1,端口号为6379;“.\redis-server --service-install --service-name ChargingGPT与redis.windows-service.conf。输入” .\redis-server --service-uninstall --service-name。输入“.\redis-server --service-stop --service-name。
2025-06-06 22:34:42
910
原创 C# CallerMemberName特性
当你在一个方法运用了CallerMemberName特性,编译器会自动将调用该方法的方法或属性的名称作为该参数的默认值,可应用于MVVM框架。
2025-06-03 19:06:58
336
原创 modbus 帧信息格式
读取线圈状态:数据域包括起始地址(2字节)和数量(2字节)。写多个保持寄存器:数据域包括起始地址(2字节)、数量(2字节)以及后续的实际写入数据(每个寄存器2字节)。写单个保持寄存器:数据域包括寄存器地址(2字节)和值(2字节)。0x02 (02): 读取离散输入状态。0x06 (06): 写单个保持寄存器。0x10 (16): 写多个保持寄存器。0x01 (01): 读取线圈状态。0x03 (03): 读保持寄存器。0x05 (05): 写单个线圈。0x0F (15): 写多个线圈。
2025-05-08 16:57:31
279
原创 C# Modbus TCP/IP学习记录
Modbus协议中,角色分为Master(主站)、Slave(从站),主站作为请求发起方,负责发送命令给一个或多个从站;1.使用Visual Studio创建C# Framework 控制台应用程序,用于编写TCP Client(客户端)、Modbus Master(主站)。3.下载Modbus Slave应用程序用于开启TCP Server(服务端)、Modbus Slave(从站)。6.默认创建的Slave内容为10行,Slave ID为1,如需修改使用工具栏Slave Defintion,
2025-03-25 09:24:50
730
2
原创 C# Task 学习记录
命名空间,是基于任务的异步编程模型(TAP,Task-based Asynchronous Pattern)的核心组件。提供了一种简单、高效的方式来处理异步操作,使得开发者可以轻松地编写非阻塞的代码。是用于表示异步操作的核心类型之一。
2025-02-12 17:01:13
274
原创 C# 特性 学习记录
在C#中,特性(Attribute)是一种用于向代码元素(如类、方法、属性等)添加元数据的机制。特性本身不会直接影响代码的执行,但它们可以提供额外的信息,这些信息可以在运行时通过反射(Reflection)来读取和使用。注释掉#define Debug代码,则执行不会输出“Debug已定义”。
2025-02-12 10:46:53
395
原创 C# ReoGrid使用记录
/true/false是勾选状态。ReoGrid是个类似于Excel的表格控件,作者在WinForm上使用,下面是使用记录。五、工作表鼠标点击事件(获取被点击的行/列索引,对象,同一行/列被点击事件)二、设置行/列总数(用于增删行)九、设置下拉框单元格选项修改事件。十、设置勾选框单元格状态修改事件。八、设置下拉框单元格选择项。六、增加勾选框单元格。七、增加下拉框单元格。
2024-09-29 15:03:19
1152
原创 C# 直接引用动态链接库,动态调用其方法,方法可执行但执行完报错记录
直接引用动态链接库,动态调用其方法,方法可执行但执行完报错:未将对象引用值对象实例。疑惑点:感觉应该报错转换失败比较恰当,有没有大佬解释一下为啥是未将对象引用值对象实例。报错:未将对象引用值对象实例。
2024-09-12 14:56:02
173
原创 C# DLL已定义类或方法,但是编译报错未定义
此时不管是重新设置应用程序引用的动态链接库C,还是重新设置动态链接库B引用的动态链接库C都不管用,还需要重新设置动态链接库A引用的动态链接库B才能解决。(修改动态链接库C输出路径,再重新设置应用程序引用的动态链接库C也管用,但当硬性要求dll都输出在同一目录的情况下,这个法子用不了)此时修改动态链接库C,在VS中开发应用程序时可以识别到C库里新增方法,但是在编译时会报错:动态链接库C未定义类或方法。应用程序引用A、B、C动态链接库,动态链接库A引用B,B引用C。
2024-09-02 16:34:07
562
原创 C# 记录一次多线程开发 Invoke卡死问题
问题描述:C# WinForm 使用Thread类创建一个线程,线程内部写有循环,使用Invoke更新UI(PictureBox,DataGridView)。当项目输出成应用程序后,在不同机子上循环固定执行不同次数后UI会卡死;解决方式:使用ManualResetEventSlim对象的Set、Reset、Wait进行线程阻塞,使用BeginInvoke代替Invoke。
2024-09-02 16:25:02
548
原创 C# 科学技术法数字转Decimal
System.Globalization.NumberStyles.Float很重要,不加会报错字符串格式不对。
2024-07-17 10:58:54
277
原创 Visual Studio远程调试工具
路径:安装路径/Common7/IDE/Remote Debugger/平台/msvsmon.exe。可远程调试同一局域网下。
2024-07-12 18:08:49
1110
原创 C# WinForm MVVM ComboBox数据绑定
一直没搞懂ComboBox数据绑定时,为什么SelectValue属性绑定无效,今天试了下,在绑定时加了个false和DataSourceUpdateMode解决,就此记录。
2024-07-12 14:36:08
419
1
原创 C# 多核循环
可以在多核执行循环工作,但如果循环次数和数据量都少的话不推荐,会造成额外开销,反而不如直接用for。它需要传入三个实参,第一个是循环起始值,第二个是循环终止值,第三个是委托类型。有多种重载,可以终止循环什么的,回头试试。使用Parallel.For。
2024-07-05 17:59:22
226
原创 GitHub DeskTop报错:“Authentication failed. Some common reasons include:……”记录
以“GitHub”搜索C盘,删除与GitHub DeskTop所有相关数据(不然卸载后再安装仍会恢复成卸载前状态),重新安装GitHub DeskTop即可重新克隆库,获取数据。
2024-05-10 11:44:24
455
1
原创 WinForm DataGridView 垂直滑动条显示异常
WinForm DataGridView的垂直滑动条不正常显示,当总行高超过控件高度(控件高度为227及以下不会出现该问题)时,右下角会出现一个灰框,因为表格控件位处TabControl下,当切换其他选项卡后再切回来时,刚刚的灰框会变成其他选项卡的内容,并且变成控件高度,猜测为垂直滑动条所属位置。(仅增加该属性的修改时,测试中垂直滑动条仍显示异常,测试完成后恢复正常,所以可改可不改,此处仅记录)
2024-05-06 17:12:54
585
1
原创 Redis 运行server.exe一闪而过解决方法
在Redis目录下进入控制台,输入:“redis-server.exe redis.windows.conf”解决。
2024-04-09 09:02:35
858
原创 C# DataTable Access数据库读取数据排序1,11,12,13……2,21,22……
【代码】C# DataTable Access数据库读取数据排序1,11,12,13……2,21,22……
2024-03-21 15:01:49
352
原创 WinDows11获取文件MD5值和SHA256值
在控制台使用:certutil -hashfile <文件路径> MD5,即可获取MD5值;将MD5改为SHA256则可获取SHA256值。
2024-03-01 10:39:23
2727
原创 C# WinForm TabControl选项卡风格自定义绘制
修改TabControl控件DrawMode属性为OwnerDrawFixed。使用TabControl控件DrawItem事件实现选项卡风格自定义绘制功能。
2024-02-23 15:16:25
1058
原创 Oracle VM VirtualBox 共享文件夹 安装增强工具
双击VBoxWindowsAdditions跟着流程走即可完成增强工具安装,需安装增强工具才可使用共享文件夹。
2024-01-31 16:17:11
456
原创 C# DLL嵌套调用时修改生效
2.修改DLL1动态链接库ConsoleWriteLineSomething方法,使其输出B并重新生成DLL1。C# DLL嵌套调用时,需要以被修改的DLL作为最下层,从下往上地重新生成所有DLL才可生效。1.在代码无修改的情况下运行应用程序,输出结果为A。4.重新生成DLL2,运行应用程序,输出结果为B。3.运行应用程序,输出结果为A。
2024-01-24 09:09:35
788
原创 c# ADODB.Recordset实例调用Fields报错
Message=未能从程序集“ConsoleApp1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”中加载类型“ADODB.FieldsToInternalFieldsMarshaler”。代码不变,更换“Microsoft ActiveX Data Objects Libray“COM组件版本为6.0解决。(原本VS给我自动引用的是2.x;更换方式为进入项目的引用窗体,选择COM节点,勾选对应COM组件即可。
2024-01-23 15:08:47
652
空空如也
C# WinForm 卡死
2024-08-06
WinForm DataGridView 滑动条显示异常
2024-05-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人