winform开源项目

优秀项目和框架精选

本文所有项目都已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发工作效率和质量。坑已挖,欢迎大家踊跃提交PR推荐或自荐(让优秀的项目和框架不被埋没🤞)。

  • GitHub开源地址:https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md
  • Gitee开源地址:https://gitee.com/ysgdaydayup/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md

AntdUI

AntdUI是一款基于 Ant Design 设计语言的开源(Apache License) WinForm UI 界面库,致力于将现代美观的前端设计风格带入到桌面应用程序中。采用纯GDI绘图,不需任何图片资源,全面支持AOT,最低兼容 .NET Framework 4.0。

  • 开源地址:https://gitee.com/antdui/AntdUI

ReaLTaiizor

ReaLTaiizor是一个开源(MIT License)、免费的.NET WinForms控件库,它提供了广泛的组件和丰富的主题选项(用户友好、注重设计),让用户可以轻松创建美观、专业的桌面应用程序。

  • 开源地址:https://github.com/Taiizor/ReaLTaiizor

MaterialSkin

一个基于 Google 的 Material Design 风格开源(MIT license)、免费的.NET WinForms UI控件库。

  • 开源地址:https://github.com/IgnaceMaes/MaterialSkin

HZHControls

HZHControls是一个.NET WinForm自定义控件,对触屏具有更好的操作支持,项目是基于FrameWork4.0,完全原生控件开发,没有使用任何第三方控件,你可以放心的用在你的项目中(注意:基于 MPL2.0 协议开源,源码仅用于交流学习)。

  • 开源地址:https://github.com/kwwwvagaa/NetWinformControl

SunnyUI

SunnyUI是一个基于.NET Framework 4.0+、.NET6、.NET8、.NET9 框架的 C# WinForm UI、开源控件库、工具类库、扩展类库、多页面开发框架(注意:基于GPL-3.0 license开源,个人学习交流免费)。

  • 开源地址:https://github.com/yhuse/SunnyUI

 

原创作者: Can-daydayup 转载于: https://www.cnblogs.com/Can-daydayup/p/18856743

 

1、仿 QQ 项目

使用 C# 和 WinForm 开发,实现了 QQ 的界面,以及部分的功能。

用了 Winform+Socket+MySQL 技术,可以实现局域网一对多通信(包括传文本、图片、表情、文件,当然也也可以本地看开两个程序进行对聊。

如果学习C#网络通信、上位机这方面,那这个项目一定有学习的价值。

功能特性

  • 参考QQ软件设计界面,达到界面仿真效果
  • 提供注册账号、找回密码功能
  • 创建服务端、客户端
  • 支持发送文本消息
  • 支持发送表情和图片
  • 支持传输文件

2、自动升级程序GeneralUpdate

当我们在日常开发中编写的客户端程序需要部署在多台主机上时,如果程序需要升级,那么一台台升级会非常麻烦,这款开源的GeneralUpdate组件,可用于Winform/WPF/ConsoleApp等应用程序的自动更新。

自动更新流程图:

代码结构剖析

3、AntdUI

一个开源的 Winform 组件库,基于 Ant Design 5.0 构建,包含了几十个常用的控件。

基于 Ant Design 设计语言的 WinForm UI 界面库,致力于将现代美观的前端设计风格带入到桌面应用程序中。采用纯GDI绘图,不需任何图片资源,全面支持AOT,最低兼容 .NET Framework 4.0。

功能特点:

  • 纯GDI绘制,没有图片,支持AOT。
  • 高质量绘图,高性能动画。
  • Winform上最阴影的阴影效果。
  • 无边框窗口,拥有原生窗口特性。
  • 3D翻转效果、主题配置、SVG矢量图、DPI适配、国际化。

开箱即用,美观高效,集成方便,现在 Winform 也能拥有美观的界面了。

AntdUI开发的聊天界面:

控件列表非常丰富,包含了大部分常用的组件,在项目中集成后可以按需使用。

4、单程序自动更新

一款专为局域网设计的 WinForm 程序更新工具。

该工具支持增量更新,大幅减少更新文件的大小和传输时间,同时无需任何额外的服务器或复杂的网络配置。

不管是客户端还是服务端功能,都可以通过一个独立的程序完成,真正实现了"零依赖"的更新体验。

该工具支持增量更新,大幅减少更新文件的大小和传输时间,同时无需任何额外的服务器或复杂的网络配置。

项目框架:

UpdateTool.exe:调用 RunTest 方法,用于测试环境的模拟。

UpdateServer.exe:调用 RunServer 方法,启动更新服务器。

UpdateClient.exe:调用 RunClient 方法,启动更新客户端。

Test.exe:模拟业务程序,自动启动 UpdateClient.exe。

传统方式下,在局域网内更新文件通常需要通过U盘逐台电脑进行复制粘贴替换,过程繁琐且耗时。而 UpdateTool解决了这一问题,实现了局域网内文件的自动化更新,极大地简化了维护流程,提高了工作效率。

使用 UpdateTool,大家可以轻松管理和分发文件更新,无需复杂的操作或额外硬件支持,让文件管理变得更加简单高效。

5、自动更新http://AutoUpdater.NET

使用最简单、最方面的一个WinForm、WPF自动更新开源的项目,目前我也一直在使用。

相对于同类项目,它的最大优点就是使用非常简单,如果非要选择最佳的自动更新项目,我大力推荐这款!

 从您的服务端获取一个 XML 文件,它用来获取程序的最新版本的信息。如果发现服务端的软件版本大于用户本地的版本,那么  会向用户显示更新对话框。如果用户按下更新按钮来更新软件,那么就会执行自动更新。

使用非常简单就两个流程。

1、在客户端中调用

如果您想要每次程序启动的时候检查更新,那么可以添加下面的代码到主程序的构造函数中或者 Form_Load 事件中

AutoUpdater.Start("https://rbsoft.org/updates/AutoUpdaterTest.xml");

如果您想要在后台实时检查更新,那么可以设置 Synchronous 为 true。

AutoUpdater.Synchronous = true;

2、在Web网站中创建一个 XML 文件,表示最新的软件版本

<?xml version="1.0" encoding="UTF-8"?>
<item>
  <version>2.0.0.0</version>
  <url>https://rbsoft.org/downloads/AutoUpdaterTest.zip</url>
  <changelog>https://github.com/ravibpatel/AutoUpdater.NET/releases</changelog>
  <mandatory>false</mandatory>
</item>

6、IP地址分配

一个 C# 开发的 IP 管理系统, SIPAM 主要用于解决工作中需要对多个网段的IP地址进行分配的工作,感兴趣的同学可以关注下。

SIPAM软件基于C#开发的PC客户端和 mariaDB,项目配置好基础数据后就可以使用了,非常简单和方便。

软件支持多语言,网段管理,群组管理,IP申请,IP审批等等。麻雀虽小五脏俱全,对于个人使用来说,应该也是够用了。

群组管理界面

申请界面

审批界面

7、HTML编辑器

Winform开源的HTML编辑器。

包括的基本功能和Word差不多了,常规的格式功能都有,以及清除MS-Word格式、拼写检查、插入表格、日期、时间,上标、下标和打印功能。

8、HZH_Controls

控件种类

  • 丰富多样:控件库包含了多种自定义控件,如提示窗、多输入窗体、翻页控件、气泡提示、多线程操作等待等,覆盖了WinForms开发的多个方面。
  • 工业控件:除了通用控件外,还包含了许多工业风格的控件,如仪表、管道、传送带等,适用于特定领域的软件开发。

项目特性:

  • 开发环境:基于.NET Framework 4.0开发,确保广泛的兼容性。
  • 技术特点:完全使用原生控件开发,未依赖任何第三方控件,提高了项目的独立性和可控性。
  • 目标平台:主要针对WinForms应用程序,为开发者提供丰富的自定义控件资源。

9、记事本

用C#编写的记事本。

10、五子棋程序

C#实现的五子棋程序,AI算法为全局搜索+积分规则。

带有五子棋核心!

11、智慧驾考系统

使用C#编写的全栈桌面项目,使用了avalonia框架、可以跨端运行,通过依赖注入运行程序。

具体内容包括在线练习,每次获取50道题、每天可获取50次。

除此之外,本项目添加了ai问答功能、云端记录错题,以及中国交通新闻网的新闻推送,和错题回顾反省功能,帮助用户综合了解交通知识。

此外系统还会自动记录用户每天的答题情况、以数据面板的形式展现出来,并通过数学工具预测用户驾考中能得到的分数,以助用户了解自身学习情况。

12、资产管理系统

在企业管理中,资产的高效管理是提升运营效率、降低成本的重要环节。为了帮助企业更好地实现资产信息的数字化、可视化管理,推荐一款功能完整、易于使用的资产管理系统(Asset Management System,简称 AMS)。

该系统基于 WinForm + SQLite 数据库和 SqlSugar ORM 框架,实现了资产的添加、编辑、导入导出、查询、打印、用户权限控制、日志记录以及数据库管理等核心功能。

13、多功能通信工具

利用sunnyUI控件库实现了多功能的通信工具,集成了串口通信,Socket通信,西门子S7通信,Modbus通信等。

14、车牌识别

基于 Halcon 开发一个简易但高效的车牌识别系统,通过图像预处理、区域提取与 OCR 字符识别等步骤,实现对图片中车牌信息的自动识别。

项目特点如下:

  • 不依赖深度学习模型,使用 Halcon 内置算子完成识别。
  • 支持英文数字车牌识别(不含中文)。
  • 可通过自定义模板扩展识别范围。
  • 识别准确率高,适合嵌入式或轻量级应用场景。

15、工业视觉软件框架

jiaowomomo/IntegratedSoftware

视觉软件,2020年05月修整期间编写的工业集成软件框架,目前不从事该行业,因此开放出来交流学习。软件已作删减,仅保留视觉部分,需自行添加Halcon的DLL方可正常运行软件。希望对大家有帮助。

想了解相机模块的朋友比较多,但因个人资源有限,相机代码并没有作过多编写和测试优化,害怕误导大家的学习方向。现软件上传了相机部分的代码,仅供大家参考,望见谅。

项目环境

  • Visual Studio 2019
  • .NET Framework 4.7.2
  • Halcon 12

AutomationSystem:软件运行主窗体项目。

BuildDLL:所有生成的引用DLL集中放置在此处,可通过BuildDLL.sln统一管理需要编译生成的项目。

Calibration:编译生成的标定DLL放置位置。

CameraDLL:编译生成的相机DLL放置位置。

CommonLibrary:个人常用的工具类项目,含文件读取写入、常用变量类型扩展、控件操作等功能。

ExternTool:编译生成的图像处理工具DLL放置位置。

Halcon:含Halcon操作窗体、Halcon图像处理工具项目。

ThirdPartyDLL:集中放置需要引用的第三方DLL。

UIControl:窗体自定义控件项目。

16、Modbus通讯测试工具

ModbusTool 是一款用于 Modbus RTU 和 TCP 通信协议测试的工具,它可以帮助工程师测试和调试 Modbus 设备的通信功能。

编程语言使用C#开发、桌面采用winform。该工具提供了实时日志记录功能,方便工程师跟踪和分析通信过程,快速定位问题并进行故障排除。

Modbus Maste:

Modbus Slave:

社区不乏有modbus相关的其他通讯工具,据了解都是收费的。

所以推荐这款工具:1、采用C#编写;2、源码是开源的。

既能使用又能学习,强烈推荐。

17、HslCommunication

HslCommunication是一个专注于工业通信的开源项目,提供了丰富的通信协议支持,适用于各种工业自动化场景。HslCommunication 支持几十种通讯协议,不仅可以作为调试助手,还适用于上位机编程,提高开发效率。

旧版版本的Hsl是开源的,如果你想学习其中的代码,那最好还是使用旧版本。

我个人认为HslCommunication最强的一点还是平时做上位机开发的TCP通信相关的代码,都能在上面找到。当然前提是你使用的是C#开发语言

HslCommunication同时也是一个通讯插件,支持工业现场大部分设备的数据采集,写入,上传互联网:

PLC品牌支持:

机器人及其他通信支持:

18、内网穿透工具NSmartProxy

NSmartProxy 是一款强大开源的内网穿透工具,采用.NET CORE的全异步模式打造。

 

功能特点

1. 跨平台,客户端和服务端均可运行在MacOS,Linux,Windows系统上;

2. 使用方便,配置简单;

3. 多端映射,只需安装一个NSmartProxy客户端可映射整个局域网内的多种服务;

4. 支持TCP协议栈下的所有协议(已经经过测试的有FTP、Telnet、SMTP、HTTP/HTTPS、POP3、SMB、VNC、RDP。),以及相当一部分基于UDP的协议(已经经过测试的有DNS查询、mosh服务)。

客户端界面:

动图封面
 

服务端界面:

动图封面
 

19、串口调试工具

LLCOM是一个.NET开源的、功能强大的串口调试工具。

支持Lua自动化处理、串口调试、串口监听、串口曲线、TCP测试、MQTT测试、编码转换、乱码恢复等功能。

无需安装,支持便携版本。

重点功能:

  • 集成TCP、UDP、SSL测试服务端/客户端功能,并且支持IPV6
  • 串口断开后,如果再次连接,会自动重连
  • 收发日志清晰明了,可同时显示HEX值与实际字符串
  • 可独立运行Lua脚本,并拥有定时器与协程任务特性(移植自合宙Luat Task架构)

20、内网穿透Linker

Linker是一个基于.NET 8.0开发的网络工具,利用P2P(点对点)或服务器中继技术,连接多个局域网(LAN),实现这些局域网中任意网络设备之间的通信。

该项目旨在提供一个灵活、高效的内网穿透和异地组网解决方案,适用于各种需要跨网络通信的场景。

使用p2p或者服务器转发,让你的各个局域网连通起来,让各个局域网内的任意联网设备都可以相互连通。

应用场景

  • 远程办公:员工可以安全地访问公司内网资源,即使他们身处不同地点。
  • 智能家居:不同家庭设备可以通过Linker实现互联互通,提升家居智能化水平。
  • 游戏联机:玩家可以在不同网络环境下进行游戏联机,享受流畅的游戏体验。
  • 数据共享:团队成员可以方便地共享文件和数据,提高工作效率。

功能演示:

如有帮助,点赞记录一下吧!

posted on 2025-09-22 23:46  大西瓜3721  阅读(71)  评论(0)    收藏  举报

导航