C# Winform 实现静态变量属性的值变了,触发事件,类似WPF的双向绑定
在C# WinForms中,虽然没有像WPF那样内置的双向绑定机制,但你可以通过事件和属性封装来实现类似的功能。具体来说,你可以在静态属性的set访问器中触发一个自定义事件,然后在需要的地方订阅这个事件,以便在属性值发生变化时执行相应的操作。 全局状态的隐患 问题:静态类和静态事件引入了全局状态,这 ...
底层开发必备技能:C#中的位运算
底层开发必备技能:C#中的位运算 在编程的世界里,位运算是程序员掌握底层开发和优化性能的利器。对于那些需要处理二进制数据、优化算法或进行底层操作的开发者来说,理解并熟练使用位运算符是必不可少的技能。本文将详细介绍C#中的位运算符及其应用场景,帮助你更好地理解和运用这些强大的工具。 一、C#中的位运算 ...
C# 版本 6 新增特性
C# 6.0 版 发布时间:2015 年 7 月 版本 6.0 随 Visual Studio 2015 一起发布,发布了很多使得 C# 编程更有效率的小功能。 以下介绍了部分功能: 静态导入 异常筛选器 自动属性初始化表达式 Expression bodied 成员 Null 传播器 字符串内插 ...
Brainfly: 用 C# 类型系统构建 Brainfuck 编译器
Brainfuck 简介 Brainfuck 是由 Urban Müller 在 1993 年创造的一门非常精简的图灵完备的编程语言。 正所谓大道至简,这门编程语言简单到语法只有 8 个字符,每一个字符对应一个指令,用 C 语言来描述的话就是: 字符 含义 > ++ptr < --ptr + ++* ...
新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
在本地部署DeepSeek大模型实现联网增强的AI应用 一、前言 在本地部署大语言模型(LLM)并赋予其联网能力,是当前AI应用开发的重要方向。本文将基于Microsoft Semantic Kernel框架,结合DeepSeek本地模型和自定义搜索技能,展示如何构建一个具备联网增强能力的智能应用。 ...
发布 VectorTraits v3.1(支持 .NET 9.0,支持 原生AOT)
目录支持 .NET 9.0中断性变更支持 原生AOT原生AOT的范例使用IlcInstructionSet参数TraitsOutput类增加IsDynamicCodeCompiled/IsDynamicCodeSupported信息的输出为了支持原生AOT, 将ReflectionUtil等类的所有 ...
使用C#表达式进行以成员命名为锚点的数据转换
使用C#表达式进行以成员命名为锚点的数据转换 在软件开发中,有时因为某些原因如底层数据结构不可更改等需要将数据结构进行转换,这些数据类型之间没有继承关系,只有字段或属性名相同,往往需要手动编写数据转换代码,这样不仅繁琐,而且容易出错. 如果涉及到大量不同的类型转换,我们可以使用C#中的反射机制来转换 ...
C# 网页截图全攻略:三种技术与 Chrome 路径查找指南
本文主要介绍了在 C# 中实现网页截图的几种技术及相关要点。涵盖了 PuppeteerSharp、Selenium 和 HtmlToImage 三种方式,分别阐述了它们的安装步骤及核心代码。同时,针对在 C# 中寻找 Windows 上 chrome.exe 路径这一问题,分析了未安装 Google... ...
.NET Framework
.NET Framework 是微软推出的一个软件开发平台,主要用于构建和运行 Windows 应用程序。它是 .NET 生态系统的早期版本,专注于 Windows 平台,并提供了丰富的类库和运行时环境。 注意事项 跨平台限制:.NET Framework 主要适用于 Windows 平台,不支持跨 ...
记一次 .NET某数字化协同管理系统 内存暴涨分析
一:背景 1. 讲故事 高级调试训练营里的一位朋友找到我,说他们跑在linux上的.NET程序出现了内存泄露的情况,上windbg观察发现内存都是IMAGE给吃掉了,那些image都标记了 doublemapper__deleted_ 字样,问我为啥会这样?说实话作为我们这些调试者非常喜欢和这样的人 ...
聊一聊 操作系统蓝屏 c0000102 的故障分析
一:背景 1. 讲故事 今年以来不知道为啥总有些朋友加我微信,让我帮忙分析下操作系统蓝屏问题,我也觉得挺好奇的,就问了其中一位朋友,说是B站来的,我就在拼命回忆,为啥会找我分析蓝屏?突然想到了去年好像录了一集关于 CrowdStrike 的热点事件。。。我本来是做.NET程序的故障分析,这操作系统的 ...
(原创)[开源][.Net Standard 2.0] SimpleMMF (进程间通信框架)更新 v1.1,极低CPU占用
一、前言 在上一篇 (原创)[.Net] 进程间通信框架(基于共享内存)——SimpleMMF 中,发布了v1.0版,最大的问题是:CPU占用较高,至少40-50%。 这既与我的开发水平有关,也与SimpleMMF诞生环境有关,这个主要是用在数字孪生各软件之间同步数据,而部署软件的工作站性能都强悍, ...
Bartender SDK C#调用二次开发 代码示例
说明 软件版本:Bartender 2022 是否支持32位:否 SDK类型:Engine类调用(还有另一种风格的SDK,忘记是啥了) 引用COM库 参考路径: Seagull\BarTender 2022\SDK\Assemblies\Seagull.BarTender.Print.dll 可能只 ...
dotnet C# 在不同的机器 CPU 型号上的基准性能测试
本文将记录我在多个不同的机器上,在不同的 CPU 型号上,执行相同的我编写的 dotnet 的 Benchmark 的代码,测试不同的 CPU 型号对 C# 系的优化程度。本文非严谨测试,数值只有相对意义 ...
.NET 数据拷贝方案选择
应用中我们经常使用到数据的复制,在.NET中有多种方式可以实现复制数据或对象。选择哪种方式、是浅拷贝还是深拷贝,具体需求场景可以取决于对象的复杂性、数据量等,本文我们介绍主要的拷贝方式以及相对高性能的方案。 1. MemberwiseClone拷贝 浅拷贝 Object.MemberwiseClon ...
VisionMaster SDK C# 控制台应用 二次开发 代码示例
前言 本文主要是个人开发经验,实用为主。可能有不严谨之处,欢迎指正 开发环境准备 对于控制台应用,其实只要从 VisionMaster4.x.x\Development\V4.x\ComControls\Assembly 中引入相关包即可,不用像其它教程里拷贝各种wpf winform组件 唯一要注 ...
HighReport报表工具V4.0带来十大核心优势变化
1.概述 经过一年时间产品升级研发,HighReport报表工具正式推出V4.0版本,报表算法和报表功能获得全面提升。HighReportV4.0带来全面质的飞跃,具有明显的产品优势。 2.亮点一:双父格扩展模型 报表引擎核心算法是父子格扩展模型,下面是常见模型 一般报表厂商下面的扩展模型是不支持的 ...
一个超经典 WinForm,WPF 卡死问题的终极反思
一:背景 1. 讲故事 写这篇文章起源于训练营里一位朋友最近在微信聊到他对这个问题使用了一种非常切实可行,简单粗暴的方式,并且也成功解决了公司里几个这样的卡死dump,如今在公司已是灵魂级人物,让我也尝到了什么叫反哺!对,这个东西叫 Harmony, github网址: https://github ...
聊一聊 C#异步 任务延续的三种底层玩法
一:背景 1. 讲故事 最近聊了不少和异步相关的话题,有点疲倦了,今天再写最后一篇作为近期这类话题的一个封笔吧,下篇继续写我熟悉的 生产故障 系列,突然亲切感油然而生,哈哈,免费给别人看程序故障,是一种积阴德阳善的事情,欲知前世因,今生受者是。欲知来世果,今生做者是。 在任务延续方面,我个人的总结就 ...
为什么 .NET8线程池 容易引发线程饥饿
一:背景 1. 讲故事 最近时间相对比较宽裕,多写点文章来充实社区吧,这篇文章主要还是来自于最近遇到的几例线程饥饿(Task.Result)引发的一系列的反思和总结,我觉得.NET8容易引发饥饿的原因,更多的在于异步回调之后底层会反复的将结果丢到线程池所致,因为数据进线程池容易,再用线程到池中去捞就 ...
博问已解决问题»
- PortableApps等U盘使用的便携软件数据存储问题?
- 什么是云计算?它有哪些主要服务类型和应用?
- 使用阿里云计算巢部署 DeepSeek-R1 遇到问题
- DeepSeek 官方平台是否提供了生成 embedding 的 api 以及 token 费用是多少
- clickhouse pod 无法启动
- EPPlus 读取 xlsx 文件异常,提示 Bad signature (0x71CA947A) at position 0x010B6489
- 请教大神们一个halcon图像相似度的问题
- angular 项目 build 时报错:"TS2688: Cannot find type definition file for 'faker'"