目录

一、简介

二、GTKSystem.Windows.Forms框架的优势

三、支持界面皮肤主题定制

四、多种控件支持

五、支持Dock、Anchor、SplitContainer布局缩放

六、支持扩展控件


一、简介

微软原生的.net winform只支持在windows平台下运行,只中一个原因是windows用的视窗是GDI+绘制的,主要原因是微软不想支持linux或macos平台。VC.Net winform软件是windows系统软件环境和开发环境最大的优势之一,是微软占据电脑主流系统的利器!

GTKSystem.Windows.Forms框架是C# winform应用程序跨平台(windows、linux、macos)界面开发框架,基于GTK组件开发,该框架的核心优势是兼容C#的原生winform表单控件窗体控件,相同的属性、方法、事件,C#原生开发即可,无需学习。

一次编译,跨平台运行。 便于开发跨平台winform软件,便于将C#升级为跨平台软件。

二、GTKSystem.Windows.Forms框架的优势

使用GTKSystem.Windows.Forms框架开发winform软件至少有8大优势:

1、框架开源,可以自由定制程序。

gitee:https://gitee.com/easywebfactory/gtksystem-windows-forms

github:https://github.com/easywebfactory/gtksystem-windows-forms

2、完全支持visual studio工具开发,支持可视化窗体设计器设计form界面。

3、与c#原生控件相兼容,相同的方法、属性、事件,软件工程可以直接原生开发,可以在原生与GTKSystem.Windows.Forms框架相互切换。

4、微软官方支持.net控制台程序在linux上运行,本框架使用.net控制台,完美运行。

5、GTK官方支持微软windows平台,可以在windows系列版本系统上运行。

6、视窗图形框架使用GTK,同时支持windows、linux、macos平台,GTK具有优秀稳定的性能,几乎所有主流linux的可视化操作视窗都是基于GTK开发,包括ubuntu、debian、kylin、deepin等主流系统,国产操作系统如统信、麒麟、深度、红旗等,GTK与linux可以无缝支持。

7、支持linux的主题界面样式,与linux操作系统融为一体,同时支持自定义界面样式。

8、支持macos,gtk或.net sdk都官方支持macos,让GTKSystem.Windows.Forms框架可以在macos完美运行。

三、支持界面皮肤主题定制,如:

四、多种控件支持

五、支持Dock、Anchor、SplitContainer布局缩放

六、支持扩展控件

可以自由扩展控件,将提供多功能的报表数据表格、折叠面板、属性网格、折叠卡片、步骤条、开关控件等常见控件。

你想让软件同时在windows下运行、在linux上运行、在苹果电脑上运行、在国产操作系统上运行吗? 那么选择GTKSystem.Windows.Forms框架!甚至,当你不想用GTKSystem.Windows.Forms框架时,直接切换回.net框架,你的软件也可以直接编译发布。

开源GTKSystem.Windows.Forms框架让C# winform支持跨平台运行的更多相关文章

  1. Windows Forms框架编程

    <Windows Forms框架编程>节选   第九章 设计模式与原则 软件设计模式(Design pattern)是一套被反复使用的代码设计经验总结.使用设计模式是为了可重用代码.让代码 ...

  2. Windows Forms和WPF在Net Core 3.0框架下并不会支持跨平台

    Windows Forms和WPF在Net Core 3.0框架下并不会支持跨平台 微软将WinForms和WPF带到.NET Core 3.0这一事实,相信大家都有所了解,这是否意味着它在Linux ...

  3. 任务驱动,对比式学习.NET开发系列之开篇------开源2个小框架(一个Winform框架,一个Web框架)

    一 源码位置 1. Winform框架 2. web框架 二 高效学习编程的办法 1 任务驱动方式学习软件开发 大部分人学习软件开发技术是通过看书,看视频,听老师上课的方式.这些方式有一个共同点即按知 ...

  4. [翻译].NET Core 3 Preview1和Windows桌面框架开源

    原文来自TechViews 今天,我们宣布推出.NET Core 3 Preview 1.这是.NET Core 3的第一个公开发布.我们有一些令人兴奋的新功能可供分享,并希望得到您的反馈.您可以使用 ...

  5. 分享几个.NET WinForm开源组件,纪念逐渐远去的WinForm。。。

    前面3个月的时间内,这些.NET开源项目你知道吗?系列文章已经发表了3篇,共计45个平时接触比较少,曾经默默无闻的.NET开源项目,展示给大家,当然不是每个人都能用得上,但也的确是有些人用了,反响还不 ...

  6. Windows 下的高 DPI 应用开发(UWP / WPF / Windows Forms / Win32)

    本文将介绍 Windows 系统中高 DPI 开发的基础知识.由于涉及到坐标转换,这种转换经常发生在计算的不知不觉中:所以无论你使用哪种 Windows 下的 UI 框架进行开发,你都需要了解这些内容 ...

  7. 分析现有 WPF / Windows Forms 程序能否顺利迁移到 .NET Core 3.0(使用 .NET Core 3.0 Desktop API Analyzer )

    今年五月的 Build 大会上,微软说 .NET Core 3.0 将带来 WPF / Windows Forms 这些桌面应用的支持.当然,是通过 Windows 兼容包(Windows Compa ...

  8. 分析现有 WPF / Windows Forms 程序能否顺利迁移到 .NET Core 3.0

    本文转自 https://blog.csdn.net/WPwalter/article/details/82859449 使用 .NET Core 3.0 Desktop API Analyzer 分 ...

  9. 【Winform】 无法将类型为“System.Windows.Forms.SplitContainer”的对象强制转换为类型“System.ComponentModel.ISupportInitialize”。

    问题:将dotnet framework 4.0 切换到2.0时,编译没有问题,在运行时出现如下错误:System.InvalidCastException: 无法将类型为“System.Window ...

  10. 开源自己用python封装的一个Windows GUI(UI Automation)自动化工具,支持MFC,Windows Forms,WPF,Metro,Qt

    首先,大家可以看下这个链接 Windows GUI自动化测试技术的比较和展望 . 这篇文章介绍了Windows中GUI自动化的三种技术:Windows API, MSAA - Microsoft Ac ...

随机推荐

  1. Python——基本输入和输出

    Python提供了基本的输入和输出功能,这些功能通常是通过内置的input()函数(用于输入)和print()函数(用于输出)来实现的.以下是这两个函数的详细描述和示例: 1. print() 函数( ...

  2. nim 3. 各种集合

    其实我挺想先去学习一下nim的模块系统,毕竟我决定暂时放弃学习golang,就是因为感觉他的模块和包方面的设计,不像c#+nuget的组合那么舒服. 但是这里还是先学习一下集合吧,感觉这方面nim很有 ...

  3. JS对Cookie的应用--JavaScript实例集锦(初学)

    一个网站上的cookie信息可以实现下次自动登录,记录你的历史等等 可以在火狐浏览器查看本地代码的cookie信息: 打开火狐浏览器--点击右键--查看页面信息--安全--查看cookie <! ...

  4. CSS动画-数字轮盘滚动效果实现(组件封装,快速使用)

    效果图: 原理分析:这玩意就和垂直方向的轮播图差不多,只是把轮播的图换成数字 主要实现:父组件:父组件接收一个curNum属性,这个属性代表当前需要显示的数字.它将这个数字传递给子组件AnimateN ...

  5. .NET 中的表达式树

    .NET 中的表达式树(Expression Trees) 表达式树是什么? 表达式树(Expression Trees)是.NET框架中的一个强大功能,它将代码表示为一个由表达式节点组成的树形结构. ...

  6. OpenOCD + DAP-LINK调试ESP32的失败经历

    目的 手里有调试STM32的DAP-LINK,想试试通过JTAG调试ESP32 OpenOCD支持CMSIS-DAP DAP-LINK支持的芯片,我手上这款描述如下,应该JTAG协议的都支持 平台 w ...

  7. IDEA使用——生成超文本格式的(HTML)JavaDoc

    概述 在大型项目中不免会有很多对外暴露的方法与接口,那我们就需要在类或者方法上面按照JavaDoc标准编写注释,就比如这样: 前面我们也提到过在Idea中可以将鼠标停留在方法名上,然后点击F2查看方法 ...

  8. tkinter小例子

    from tkinter import * def on_click(): label['text'] = text.get() root = Tk(className='hello') root.m ...

  9. Android 13 - Media框架(14)- OpenMax(二)

    关注公众号免费阅读全文,进入音视频开发技术分享群! 这一节我们将来解析 media.codec 这个 HIDL service 究竟提供了什么服务,服务是如何启动的. 1.main 函数 我们先来看 ...

  10. ros2 foxy订阅话题问题

    代码片段 这部分代码在galactic版本编译是OK的,可在foxy下编译就出了问题 TeleopPanel::TeleopPanel(QWidget* parent) : rviz_common:: ...