一、十大开源的.NET用户界面框架

选择一款合适的GUI框架是.NET开发中比较重要但又很棘手的问题,因为用户界面相当于一款应用的"门面",直接面向用户。好的UI更能吸引用户,有时甚至成为决定一款应用成败的关键。下面小编整理出十大应用最广泛.NET开源用户界面框架,希望.NET开发人员以后选择GUI框架时不再犯难。

Windows.Forms

Windows.Forms是微软的.NET开发框架图形用户界面的一部分,该组件通过将现有的Windows API(Win32 API)封装为托管代码提供了对Windows本地(native)组件的访问方式,兼容Linux和其他Mono平台。

WPF

WPF(Windows Presentation Foundation)是微软推出的基于Vista的用户界面框架,属于NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作;同时它提供了全新的多媒体交互用户图形界面。

Gtk#

Gtk#是一个针对.NET和Mono的图形用户界面工具集,项目绑定了gtk+ 工具集并打包了GNOME库,支持完整的原生图形Gnome 应用程序开发。

QT

Qt是一个用户群非常广泛的跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立各种高级图形用户界面所需的所用功能。它完全面向对象的,很容易扩展,并且允许真正地组件编程。

MonoMac

这款工具励志为.Net/Mono 开发人员提供原生的Mac OS X应用程序开发体验。开发者可以以C#访问整个MacOS X APIs ,对AppKit GUI APIs无限制。

wxWidgets

wxWidgets是一个非常完整的GUI工具库,提供了很多工具类,免费供个人使用或者商业使用。只要可能,wxWidgets就会使用本地平台的SDK。也就是说,同一段代码,在Windows下编译将具有Windows程序的外观,在Linux下编译将具有Linux程序的外观。

Qyoto

Qyoto是跨平台的应用程序框架Qt的.NET语言绑定,支持Unix, Windows, OSX 平台。能够使用在 C#、Visual Basic或其他 .NET 语言,同时也是Kimono(KDE API 的 .NET 绑定)的基础。

Qt4Dotnet

使用IKVM绑定到.net的QtJambi java端口。

wxNet

针对wxWindows的.net绑定,支持Windows、Linux和OSX平台,为各个平台支持原生外观。

GTKmm

GTKmm是官方的GTK+的C++接口,GTK+是当前最流行的图形界面开发库之一。使用gtkmm,你不但可以从代码还可以用Glade来创建用户界面。不过需要libglademm的配合。

二、开源的Windows界面库(国外)

1、SmartWin++

遵循BSD许可协议的C++GUI库,建立在Windows API之上,但仍可以通过使用WineLib在Linux/xNix上使用。也支持Pocket PC和基于WindowsCE的应用程序...

2、XCLASS

XCLASS库是X Windows环境中的一个C++GUI工具包的。它是基于Xlib的,由一套组件,包括从简单部件到复杂的,其中也包括许多常用的对话框。组件有MS Windows外观风格。

3、Windows++

Windows++是一个轻量级的C++应用程序框架,它可以让你的C++程序中使用窗口

4、FOX

FOX是一个C++开发图形用户界面库,方便和有效的基础工具包。

5、V C++ GUI框架

V是一个免费的可移植的C++的图形用户界面框架,旨在开发出各种不同的图形界面平台上的应用程序。

6、wxWidgets

一个开源的C++ GUI框架,使跨平台的编程变得简单。

7、GtkAda

Ada95的一个完整的图形工具包

8、FLTK

FLTK的是一个跨平台的C++ GUI工具包用于UNIX / Linux(X11),支持微软Windows和MacOSX

9、lesstif

lesstif的是Hungry Programmer的OSF/Motif版本。

10、Open Motif

Open Motif是Unix环境下的图形库

11、Microwindows

Microwindows是一个开源项目,旨在将现代图形窗口环境的功能在小型设备和平台上使用。

 三、开源的Windows界面库(国内)

1.  炫彩界面库XCGUI

炫彩界面库不仅是界面库,它是软件界面开发框架,让用户开发桌面软件变的简单高效,它功能丰富,小巧,安全(所有界面元素无句柄),Unicode字符编码,完善的帮助文档;

并且提供了UI设计器,支持XML布局,CSS样式表,XML资源;该库采用C语言开发,速度更快,支持多种开发语言调用,例如C#,易语言;不需要第三方库的支持,不需要MFC,ATL,和WINDOWS标准控件;

采用DirectUI设计思想,在窗口内无子窗口,窗口相当于容器,界面元素都是逻辑上的区域,没有句柄.灵活易扩展,即支持C语言风格开发,同时也支持C++语言开发,用户可以对元素句柄进行包装扩展,支持用户自绘,支持各种格式图片.

详情:http://www.okbase.net/file/item/21495

2. DirectUI界面库DuiLib

Duilib是一个windows下免费开源的directui界面库,是国内首个开源的directui界面库,可以将用户界面和处理逻辑彻底分离,极大地提高用户界面的开发效率。提供所见即所得的开发工具UIDesigner。使用DirectUI后将使得我们的设计人员彻底解放,不会受到开发的束缚,可以充分地发挥其设计能力来设计软件界面,并参与到用户界面开发过程中。
Duilib 目前支持Windows 32、Window CE、Mobile等平台,使用C++开发,遵循BSD协议,可以免费用于商业项目。这个就比较大名鼎鼎了,不用多说了吧。包括华为网盘在内的很多业内企业都在用这个界面库。

详情:http://www.okbase.net/file/item/21497

Duilib开发进阶: http://blog.csdn.NET/xdrt81y/article/category/2139657

3. 基于金山开源项目的界面库BKUIlib

这是从金山卫士开源项目提取出来的界面库,随着金山开源项目的增多,界面库的结构也趋向于稳定.简单地剥离出了这个界面库,并取名叫
Bkuilib。

详情:http://www.okbase.net/file/item/21499

4. 基于DirectUI技术的开源界面库DUIEngine

DUIEngine是一个开源的界面库,采用目前流行的DirectUI技术。该界面库也是从金山卫士
开源的界面部分(bkwin)演化而来,并经过全面的重构。

详情:http://www.okbase.net/file/item/21500

5.RingSdk

Ringsdk是CSDN上一个前辈自己写的界面库,这个界面库很轻而易举实现QQ2009的界面效果。链接见

http://blog.csdn.net/ringphone/article/details/2911244  貌似Ringsdk和MFC无法进行交互,但是
RingSdk其中有很多的图形处理的代码都非常有参考价值

6.魔方界面库

官方网站 http://www.muilib.com/

MuiLib(MagicUI Library)Windows高级界面开发库是在国内首家免费开源的DuiLib界面开发库基础上经过针对性的扩展而发展起来的,他继承了DuiLib高度自由灵活的特点,并吸收了其他界面库的一些优点,针对Windows层窗口按像素透明技术而重点优化后形成的一个优秀界面开发库,是一个使用纯C++调用WindowsAPI的开发库,无任何其他第三方依赖框架,您可以使用其提供的各种高级控件来创建更加炫酷的用户界面

开源.NET界面库的更多相关文章

  1. 几款国产开源的Windows界面库

    上次介绍的几款图形界面库http://blog.okbase.net/vchelp/archive/23.html都是国外的开源项目,今天介绍的几款都是国人的开源项目,大部分是采用DirectUI设计 ...

  2. C++界面库

    刚开始用C++做界面的时候,根本不知道怎么用简陋的MFC控件做出比较美观的界面,后来就开始逐渐接触到BCG  Xtreme ToolkitPro v15.0.1,Skin++,等界面库,以及一些网友自 ...

  3. 仿迅雷播放器教程 -- C++ windows界面库对比(11)

    从上一篇文章中可以看出,C++的界面方向还很弱,没有任何一个界面库可以一统天下,所以才造成了界面库百家争鸣的情况. 从时间上看: 1.出来最早的是QT,1991年就有了. 2.VC++ 虽然1992年 ...

  4. C++界面库(十几种,很全)

    刚开始用C++做界面的时候,根本不知道怎么用简陋的MFC控件做出比较美观的界面,后来就开始逐渐接触到BCG  Xtreme ToolkitPro v15.0.1,Skin++,等界面库,以及一些网友自 ...

  5. delphi for DirectUI界面库

    下面是form代码: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Cont ...

  6. C++100款开源界面库[转]

    (声明:Alberl以后说到开源库,一般都是指著名的.或者不著名但维护至少3年以上的.那些把代码一扔就没下文的,Alberl不称之为开源库,只称为开源代码.这里并不是贬低,像Alberl前面那个系列的 ...

  7. C++ 100款开源界面库 (10)

    (声明:Alberl以后说到开源库,一般都是指著名的.或者不著名但维护至少3年以上的.那些把代码一扔就没下文的,Alberl不称之为开源库,只称为开源代码.这里并不是贬低,像Alberl前面那个系列的 ...

  8. 仿迅雷播放器教程 -- C++ 100款开源界面库 (10)

      (声明:Alberl以后说到开源库,一般都是指著名的.或者不著名但维护至少3年以上的.那些把代码一扔就没下文的,Alberl不称之为开源库,只称为开源代码.这里并不是贬低,像Alberl前面那个系 ...

  9. 开源的DirectUI界面库

    1. duilib简介 duilib是一个开源的DirectUI界面库,简洁但是功能强大.而且还是BSD的license,所以即便是在商业上,大家也可以安心使用.现在大家可以从这个网站获取到他们所有的 ...

随机推荐

  1. [Oracle]System 表空间的文件丢失

    如果system 表空间的文件丢失,假设有备份的情况,可以恢复.数据库需要设置为mount 状态,然后restore/recover datafile 模拟实验: SQL> select nam ...

  2. Arcgis安装要素

    1. ArcGIS安装过程中需将用户名改为计算机名,该计算机名称时需要新建对话框. 2. ArcGIS Server安装过程中要设置ArcGISWebServices用户的读写权限,即设置ASP.NE ...

  3. AngularJS 的异步服务测试与Mocking

    测试 AngularJS 的异步服务 最近,在做项目时掉进了 AngularJS 异步调用 $q 测试的坑中,直接躺枪了.折腾了许久日子,终于想通了其中的道道,但并不确定是最佳的解决方案,最后还是决定 ...

  4. python数据图形化—— matplotlib 基础应用

    matplotlib是python中常用的数据图形化工具,用法跟matlab有点相似.调用简单,功能强大.在Windows下可以通过命令行 pip install matplotlib 来进行安装. ...

  5. Mvc4_@Styles.Render提高性能

    在页面上可以用@Styles.Render("~/Content/css") 来加载css 首先要在App_Start 里面BundleConfig.cs 文件里面 添加要包含的c ...

  6. React笔记-事件注册

    事件机制 本系列以React v16.8.3为基础进行源码分析 React事件主要分为两部分: 事件注册与事件分发.下面先从事件注册说起. 事件注册 假设我们的程序如下: <!DOCTYPE h ...

  7. openstack horizon 开发第三天

    工作流:工作流是带有选项的复杂表单,每个工作流必须包含扩展Workflow, Step和的类Action1. url.py 路由处理 RESOURCE_CLASS = r'^(?P<resour ...

  8. 了不起的Node.js--之二

    安装模块 使用NPM包管理器可以让你轻松对模块进行管理,它会下载指定的包.解决包的依赖.进行测试脚本及安装命令行脚本. 安装二进制工具包 有的项目分发的是Node编写的命令行工具.这个时候,安装时要增 ...

  9. 《Linux内核分析》-- 扒开系统调用的三层皮(下)之system_call中断处理过程 20135311傅冬菁

    20135311傅冬菁  原创作品 <Linux内核分析>MOOC课程 分析system_call中断处理过程 内容分析与总结: 系统调用在内核代码中的工作机制和初始化 系统调用在用户态中 ...

  10. Day Five

    站立式会议 站立式会议内容总结 442 今天:编写具体计划的界面 遇到的问题:相对布局.绝对布局理解不够深刻 明天:完成设定计划时间的功能 331 今天:添加书籍/计划按钮,添加书籍时有一个文件选择 ...