开源GTKSystem.Windows.Forms框架让C# Winform支持跨平台运行

简介: 开源GTKSystem.Windows.Forms框架让C# Winform支持跨平台运行

前言

在咱们的印象中C# WinForm一直只支持Windows系统运行,无法支持跨平台运行。今天大姚给大家分享一个开源框架GTKSystem.Windows.Forms,它能够让C# Winform支持跨平台运行。

项目介绍

GTKSystem.Windows.Forms是一个C#桌面应用程序跨平台(Windows、Linux、macOS)开发框架,基于GTK组件开发。使用该框架开发项目时,Visual Studio可以使用C#的原生WinForms表单窗体设计器,保持与原生WinForms相同的属性、方法和事件,无需额外学习。通过一次编译,可以实现跨平台运行,便于开发跨平台WinForms软件,以及将现有的C# WinForms软件升级为跨平台软件。

软件架构

使用GTK3.24.24.95作为表单UI重写C#的System.Windows.Forms组件,在应用时,兼容原生C#程序组件。

项目特点

  • 跨平台性:支持Windows、Linux和macOS三大主流操作系统。
  • 易用性:无需学习新的开发语言或框架,直接使用C#和原生WinForms开发。
  • 高效性:一次编译即可在多个平台上运行,减少开发成本和时间。

Visual Studio插件安装

  1. 从NuGet上安装GTKSystem.Windows.FormsDesigner类库,此类库可以在编译工程时修正窗体设计器。
  2. 下载本插件工具,关闭Visual Studio 2022,直接双击GTKWinformVSIXProject.vsix文件安装(本框架下的工程,Studio没有添加Form模板项,需要安装此插件)。

插件会安装两个功能:

  • 1、新建项的Form窗体模板、用户控件模板。
  • 2、工程右键菜单。

项目源代码

案例演示效果

项目源码地址

更多项目实用功能和特性欢迎前往项目开源地址查看👀,别忘了给项目一个Star支持💖。

优秀项目和框架精选

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

相关文章
|
5月前
|
Oracle 关系型数据库 Linux
VirtualBox 7.1.10 (macOS, Linux, Windows) - 开源跨平台虚拟化软件
VirtualBox 7.1.10 (macOS, Linux, Windows) - 开源跨平台虚拟化软件
324 0
VirtualBox 7.1.10 (macOS, Linux, Windows) - 开源跨平台虚拟化软件
|
12月前
|
C# Android开发 虚拟化
C# 一分钟浅谈:MAUI 跨平台移动应用开发
.NET MAUI 是 Microsoft 推出的跨平台框架,支持 Windows、macOS、iOS 和 Android。本文从基础概念入手,探讨 MAUI 的常见问题、易错点及解决方案,并通过代码示例详细说明。涵盖平台特定代码、XAML 语法、数据绑定、性能优化和调试技巧等内容,帮助开发者更好地掌握 .NET MAUI。
1082 55
|
6月前
|
Linux 网络安全 iOS开发
SecureCRT & SecureFX 9.6.3 for macOS, Linux, Windows - 跨平台的多协议终端仿真和文件传输
SecureCRT & SecureFX 9.6.3 for macOS, Linux, Windows - 跨平台的多协议终端仿真和文件传输
1465 4
SecureCRT & SecureFX 9.6.3 for macOS, Linux, Windows - 跨平台的多协议终端仿真和文件传输
|
12月前
|
开发框架 C# iOS开发
基于C#开源、功能强大、灵活的跨平台开发框架 - Uno Platform
基于C#开源、功能强大、灵活的跨平台开发框架 - Uno Platform
375 3
|
C# Windows
C#编写Windows服务
一.Windows服务介绍: 一个Windows服务程序是在Windows操作系统下能完成特定功能的可执行的应用程序。Windows服务程序虽然是可执行的,但是它不像一般的可执行文件通过双击就能开始运行了,它必须有特定的启动方式。
1157 0
|
C# Windows 调度
C#/.NET基于Topshelf创建Windows服务程序及服务的安装和卸载(极速,简洁)
C#/.NET基于Topshelf创建Windows服务程序及服务的安装和卸载(极速,简洁)本文首发于:码友网--一个专注.NET/.NET Core开发的编程爱好者社区。 文章目录C#/.NET基于Topshelf创建Windows服务的系列文章目录: C#/.
1776 0
|
C# Windows
使用C#创建windows服务续之使用Topshelf优化Windows服务
前言: 之前写了一篇“使用C#创建windows服务”,https://www.cnblogs.com/huangwei1992/p/9693167.html,然后有博友给我推荐了一个开源框架Topshelf。
1587 0
|
C# Windows
使用C#创建windows服务
前言: 前段时间因为项目上需要用到实现一个简答的卫星云图播放功能,因此需要将卫星云图实时下载到本地目录。当时也没多想,直接就用控制台程序开发了一个卫星云图自动下载工具。最近项目不是很忙了,静下心重新看了一下项目代码,对部分代码进行了重构...... 同时也发现了卫星云图下载工具的问题,总不能每次客户使用的时候都让客户去跑一遍控制台程序或者一直运行这个控制台程序吧。
1429 0
|
Web App开发 C# Windows
C#开发奇技淫巧一:调试windows系统服务
原文:C#开发奇技淫巧一:调试windows系统服务 windows系统服务不能直接运行,只能在安装完服务之后启动、暂停、继续、停止服务,导致服务的调试不能使用一般的断点调试。 要调试系统服务,可以采用附加到进程的方式:在VS的工具栏中找到“调试”这个选项,然后选取“附加到进程” 然后选择相...
881 0