本篇随笔分析一个实际的用于科室的物质清点系统的实现过程,针对各个模块的进行详细的业务分析和基于我们自己的WInform开发框架进行快速实现的整个过程,引入库房、物资(产品)、库存、入库、出库等主要的业务对象,并根据实际需要对相关的业务界面进行设计开发。 ...
前言 在快速迭代的软件开发环境中,如何高效地开发一个功能完整、界面美观的 WinForm 管理系统,是许多开发者面临的现实问题。今天推荐一款基于 Ant Design 设计语言的 WinForm UI 框架,它通过深度封装和现代化设计,彻底改变了传统 WinForm 应用的开发模式。大家无需再为繁琐 ...
还在为复杂的 Office COM 组件调用而头疼吗?MudTools.OfficeInterop 就是你想要的!这是一套针对 Microsoft Office 应用程序(包括 Excel、Word、PowerPoint 和 VBE)的 .NET 封装库。我们通过提供简洁、统一的 API 接口,大大 ...
前言 在桌面应用开发领域,版本更新始终是影响用户体验的关键环节。传统的更新方式不仅操作繁琐,还常伴随兼容性风险。对于桌面应用程序而言,实现一个高效且用户友好的自动更新机制尤为重要。 今天推荐一款专为 .NET 经典桌面应用设计的轻量级工具,以极简配置实现无缝更新,让大家告别复杂的脚本编写,专注于核心 ...
这是一个基于 Microsoft WebView2 的 .NET 开源库,您可以使用 HTML、CSS 和 JavaScript 轻松构建强大的 WinForm 应用程序。 ...
win10系统 亲测有效! 批处理清除图标缓存数据库如果上面两个方法都无法解决问题,那就试试更暴力的批处理吧。 这段批处理文件会删除 IconCache.db 文件,同时还清理 thumbcache.db 文件和注册表中的 IconStreams、PastIconsStream 两个值。清理速度很快 ...
一开始图标为“W”,改成"A"重新编译后,还是“W” 方法一重启电脑你永远可以相信重启大法,他确实能解决99%的问题,重启完就好了 方法二修改程序运行目录名或者他的任意父文件夹名注意:如果在没重启的情况下又把文件夹名改回去了,那图标也回去了 提示 图标最好选择 64×64 以上的,如果设置图标查看方 ...
权限以树行结构呈现 可对权限进行添加,编辑,删除操作,也可以查看拥有此权限的账号 “启用验证”为true时这个权限是开始验证的,否则就不开启权限验证, “启用验证”用于中途某个按钮不验证权限了,就把这个权限不开启验证就可以了,不然就得去把所有人都分配上这个权限 编辑权限信息 查看拥有某个权限的账号 ...
WinForm 使用 Win32 API 实现的无边框窗口 前言 时光荏苒,转眼已近是2025年了。不知不觉两年多没有研究代码了,在这期间 .NET 10 都快 RC 了,前几天刷手机看到张队公众号里有关于 .NET 9.0 AOT 发布的内容,所以写了这些代码来测试一下 AOT 编译的效果,并评估 ...
程序在预警时,会发出报警音,当报警音频播放时间,超过预警频率时,就会像我们打印文档一样,像打印机发送10次打印任务。当打出第1张纸的时候,这时候想取消打印。就不能在电脑端通过软件操作了。因此为了避免这种事情发生,就只有等打印机打完一张,再发下一个任务。这样的话,可以随时发起取消打印任务。 如果实现在 ...
事情是这样的,如上图所示,因为一个系统里面有好几个子系统,有些子系统之间的“增删查改”又是相通的,于是想通过复制相同的窗体到另外一个文件夹的时候,如果不正确引用“新项目”将会出现以上各种错误。在网上搜索了各种方式,尝试了各种办法,最后找到下面这种亲测有效的解决办法。正确的打开方式是这样的,如下步骤操 ...
1.线程池(Default Thread Pool): 使用 ThreadPool.QueueUserWorkItem、Task.Run 和 Task.Factory.StartNew。 适用于大多数后台任务和 I/O 操作。 2.自义任务调度器(Custom Task Scheduler): 通过 ...
多线程编程是一种允许在同一程序中同时执行多个线程的技术,以提高程序的性能和响应性。多线程的实现原理涉及操作系统、编程语言和编译器等多个层面。以下是对多线程实现原理的详细解释: 多线程的基本概念 线程(Thread): 线程是程序执行的基本单元,是操作系统能够进行运算调度的最小单位。 一个进程可以包含 ...
这段时间搞东西发现 C# Windows库里 没有了以前 C++ 中 修改坐标系 的一些 API,比如 SetViewportExtEx, SetWindowExtEx 这些东西。 众所周知,在 Windows 系统中,坐标系的原点是从左上角开始为(0,0)的,Y轴越下值越大。这与现实生活中场景,低 ...
本系列文章: OPCUA 探讨(一)——测试与开发环境搭建 OPCUA 探讨(二)——服务器节点初探 OPCUA 探讨(三)——客户端代码解读 OPCUA 探讨(四)——客户端代码解读2 前文中我们探讨了OPCUA客户端应用的基本配置,以及如何与OPCUA服务器建立会话(Session)。 OPCU ...
本系列文章: OPCUA 探讨(一)——测试与开发环境搭建 OPCUA 探讨(二)——服务器节点初探 OPCUA 探讨(三)——客户端代码解读 OPCUA 探讨(四)——客户端代码解读2 本文开始讨论OPCUA客户端源码的构造。 项目地址:https://gitee.com/zuoquangong/ ...
一、前言 OPCUA(OPC Unified Architecture)是一种应用层数据通信协议,其规范由OPC基金会(OPC Foundation)制定,笔者在工作期间(面向西门子数控系统的数据采集)接触该协议较多。 西门子数控系统产品称作Sinumerik,其内部嵌入了一个OPCUA服务器,通过 ...
实现和Word标题栏类似的效果 可以看到有三种颜色: 默认时是(243, 243, 243),鼠标进入时是这样(210, 210, 210),鼠标按下的瞬间变为了(177, 177, 177) 4个关键事件:MouseEnter、MouseLeave、MouseDown、MouseUp MouseE ...
[STAThread] 特性用于需要与 COM 组件交互的应用程序,尤其是依赖单线程模型(如 Windows Forms 应用程序)的组件。在 STA 模式下,线程拥有自己的消息循环,这对于处理用户界面和某些 COM 组件是必要的。 [STAThread] static void Main(stri ...
示例项目结构 在 Visual Studio 中创建一个 WinForms 应用程序后,项目结构如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...