![]() |
VOOZH | about |
dotnet add package GTKSystem.Windows.Forms --version 1.3.24.88
NuGet\Install-Package GTKSystem.Windows.Forms -Version 1.3.24.88
<PackageReference Include="GTKSystem.Windows.Forms" Version="1.3.24.88" />
<PackageVersion Include="GTKSystem.Windows.Forms" Version="1.3.24.88" />Directory.Packages.props
<PackageReference Include="GTKSystem.Windows.Forms" />Project file
paket add GTKSystem.Windows.Forms --version 1.3.24.88
#r "nuget: GTKSystem.Windows.Forms, 1.3.24.88"
#:package GTKSystem.Windows.Forms@1.3.24.88
#addin nuget:?package=GTKSystem.Windows.Forms&version=1.3.24.88Install as a Cake Addin
#tool nuget:?package=GTKSystem.Windows.Forms&version=1.3.24.88Install as a Cake Tool
Visual Studio原生开发,无需学习,一次编译,跨平台运行. C#桌面应用程序跨平台(windows、linux、macos)开发框架,基于GTK组件开发,使用该框架开发项目,Visual studio可以使用C#的原生winform表单窗体设计器,相同的属性、方法、事件,C#原生开发即可,无需学习。一次编译,跨平台运行。 便于开发跨平台winform软件,便于将C# winform软件升级为跨平台软件。
使用DotNet Csharp为开发语言,使用GTK3.24.24.95作为表单UI,重写C#的System.Windows.Forms组件,在应用时,兼容原生C#程序组件。
默认的情况下,visual studio从Nuget引用GtkSharp编译时,就会自动下载Gtk.zip运行时安装包,并自动解压安装。本开源项目下载包也包含Gtk.zip包,可手动安装。以下是2种环境安装方法:
安装GtkSharp后,编译你的工程项目时,会自动下载gtk.zip解压到目录$(LOCALAPPDATA)\Gtk\3.24.24配置Gtk环境,目前国内网络限制,可能会出现无法下载的错误。
你可以打开电脑属性配置,或者执行以下.bat命令(自行修改安装目录):
@set GTK3R_PREFIX=C:\Program Files\GTK3-Runtime Win64\bin
@echo set PATH=%GTK3R_PREFIX%;%%PATH%%
@set PATH=%GTK3R_PREFIX%;%PATH%
//在windows下使用环境变量,在有些情况下可能会出现异常,如:与intel wifi的zlib1.dll冲突
//英特尔的环境变量 PATH: C:\Program Files\Intel\WiFi\bin\
//解决方法:修改C:\Program Files\Intel\WiFi\bin\zlib1.dll的名称或删除该文件
//注意:修改该文件可能对intel wifi正常运行的影响
windows安装DotNet环境:
从微软官网下载安装包https://dotnet.microsoft.com/zh-cn/download
桌面版linux操作系统通常已经预装GTK环境,不需要再安装GTK,只需安装DotNet SDK即可运行本框架。
对于没有安装GTK环境的linux系统,可用以下命令安装:
#Debian/Ubuntu环境
sudo apt install libgtk-3-0 //Binary package
sudo apt install libgtk-3-dev //开发环境 package
#Arch环境
sudo apt install gtk3
#Fedora 环境
sudo apt install gtk3 //Binary package
sudo apt install gtk3-devel //开发环境 package
*或指定库名安装
sudo apt-get install libgtk3*
#从MSYS2安装:
pacman -S mingw-w64-ucrt-x86_64-gtk3 或 pacman -S mingw-w64-x86_64-gtk3
*检查环境情况(需要安装pkg-config):
pkg-config --cflags --libs gtk+-3.0
*查找gtk的安装包目录:
ldconfig -p | grep gtk
linux安装DotNet环境:
安装方法可以查看微软官网教程:https://learn.microsoft.com/zh-cn/dotnet/core/install/linux-scripted-manual
MacOS安装gtk环境
一、应用商店安装:
brew install gtk+3
二、源码安装
# 克隆 Gtk-OSX 仓库(gtk-osx-master.zip解压后可本地安装)
git clone https://gitlab.gnome.org/GNOME/gtk-osx.git
cd gtk-osx
# 运行安装脚本
/gtk-osx-setup.sh
MacOS安装dotnet环境
安装方法请看微软官方教程:https://learn.microsoft.com/zh-cn/dotnet/core/install/macos
工具一、从NuGet上安装GTKSystem.Windows.FormsDesigner类库,此类库可以在编译工程时修正窗体设计器。
工具二、使用本项目插件工具(在项目下载包里),可以有效清理缓存、修正窗体设计器,关闭visual studio,直接双击GTKAppVSIX.vsix文件安装(本框架下的工程,Studio没有添加Form模板项,需要安装此插件)
插件会安装两个功能:
1、新建项的Form窗体模板、用户控件模板。
2、修正窗体设计器。
以下配置在你的项目工程里操作:
配置<UseWindowsForms>为false
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<UseWindowsForms>false</UseWindowsForms>
引用GTKSystem.Windows.Forms、GtkSharp(3.24.24.95)
<br/><b>此配置主要是用于双工程方法,用C#原生窗体工程管理窗体</b>,项目演示工程即使用此方法,详细的使用教程可以访问https://www.gtkapp.com/formsdesigner
<br/>配置如下:
<Project>
<PropertyGroup>
<BaseIntermediateOutputPath>obj\$(MSBuildProjectName)</BaseIntermediateOutputPath>
<IntermediateOutputPath>$(BaseIntermediateOutputPath)\$(TargetFramework)</IntermediateOutputPath>
</PropertyGroup>
</Project>
在项目下新建System.Resources.ResourceManager类,继承GTKSystem.Resources.ResourceManager,用于覆盖原生System.Resources.ResourceManager类。 GTKSystem.Resources.ResourceManager实现了项目资源文件和图像文件读取。 如果项目里没有使用资源图像文件,可以不用新建此文件*。
在项目下新建System.ComponentModel.ComponentResourceManager类,继承GTKSystem.ComponentModel.ComponentResourceManager,用于覆盖原生System.ComponentModel.ComponentResourceManager类。<br/> GTKSystem.ComponentModel.ComponentResourceManager实现了项目资源文件和图像文件读取(调用GTKSystem.Resources.ResourceManager)。 如果项目里没有使用资源图像文件,可以不用新建此文件。
企业服务:https://www.gtkapp.com/vipservice
QQ群:1011147488 邮箱:438865652@qq.com <br/>
为什么Form窗体设计器打不开?<br/>
如果你安装了GTKSystem.Windows.FormsDesigner
打开工程右键菜单,执行 <b>[清理] → [重新生成] →打开窗体</b>,如果出现异常,重启VS。
详细方法请访问[https://www.gtkapp.com/formsdesigner/](https://www.gtkapp.com/formsdesigner/)。
有三种方法使用窗体设计器,
一)从NuGet安装GTKSystem.Windows.FormsDesigner,安装项目下载包里的VisualStudio插件,重新编译工程、修复窗体设计器。
二)切换成原生Net框架windows应用程序工程,把相关form界面文件包含进工程,即可使用窗体设计器。
三)切换成framework框架的windows应用工程,把相关form界面文件包含进工程,即可使用窗体设计器。
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 net5.0 was computed. net5.0-windows net5.0-windows was computed. net6.0 net6.0 was computed. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 was computed. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 is compatible. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 netcoreapp2.0 was computed. netcoreapp2.1 netcoreapp2.1 was computed. netcoreapp2.2 netcoreapp2.2 was computed. netcoreapp3.0 netcoreapp3.0 was computed. netcoreapp3.1 netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 netstandard2.0 is compatible. netstandard2.1 netstandard2.1 was computed. |
| .NET Framework | net461 net461 was computed. net462 net462 was computed. net463 net463 was computed. net47 net47 was computed. net471 net471 was computed. net472 net472 was computed. net48 net48 was computed. net481 net481 was computed. |
| MonoAndroid | monoandroid monoandroid was computed. |
| MonoMac | monomac monomac was computed. |
| MonoTouch | monotouch monotouch was computed. |
| Tizen | tizen40 tizen40 was computed. tizen60 tizen60 was computed. |
| Xamarin.iOS | xamarinios xamarinios was computed. |
| Xamarin.Mac | xamarinmac xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos xamarinwatchos was computed. |
Showing the top 2 NuGet packages that depend on GTKSystem.Windows.Forms:
| Package | Downloads |
|---|---|
|
Net4x.GtkWindowsFormsLibrary
Windows Library |
|
|
Net4x.InputBoxLibrary.GtkWinForms
InputBoxLibrary WinForms |
Showing the top 1 popular GitHub repositories that depend on GTKSystem.Windows.Forms:
| Repository | Stars |
|---|---|
|
easywebfactory/gtksystem-windows-forms
C # desktop application cross platform (Windows, Linux, macOS) development framework, based on GTK components. Using this framework to develop projects, Visual Studio can use C #'s native Winform form designer. The same properties, methods, and events can be developed in C # without learning. One compilation, cross platform operation.
|
| Version | Downloads | Last Updated |
|---|---|---|
| 1.3.24.88 | 178 | 3/11/2026 |
| 1.3.24.87 | 119 | 2/28/2026 |
| 1.3.24.86 | 133 | 2/5/2026 |
| 1.3.24.85 | 154 | 1/26/2026 |
| 1.3.24.84 | 144 | 1/8/2026 |
| 1.3.24.83 | 168 | 12/13/2025 |
| 1.3.24.82 | 224 | 12/5/2025 |
| 1.3.24.81 | 214 | 10/31/2025 |
| 1.3.24.80 | 239 | 10/26/2025 |
| 1.3.24.79 | 222 | 10/22/2025 |
| 1.3.24.78 | 219 | 10/21/2025 |
| 1.3.24.77 | 228 | 10/16/2025 |
| 1.3.24.76 | 264 | 9/13/2025 |
| 1.3.24.75 | 349 | 8/29/2025 |
| 1.3.24.74 | 247 | 8/15/2025 |
| 1.3.24.73 | 247 | 8/14/2025 |
| 1.3.24.72 | 489 | 7/25/2025 |
| 1.3.24.71 | 545 | 7/24/2025 |
| 1.3.24.70 | 512 | 7/21/2025 |
| 1.3.24.69 | 294 | 6/29/2025 |
C#界面跨平台开发组件GTKSystem.Windows.Forms