一、十大开源的.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. pygame 入门实例

    本文基于win7(64) + py3.5(64)环境. 本文是这里的一篇学习笔记.加入了自己的理解. 本文最终目的是实现一个飞机躲避导弹的游戏. 1.核心概念 pygame 的核心概念有: Surfa ...

  2. Ubuntu+Qt+OpenCV+FFMPEG环境搭建

    基于ubuntu16.04下opencv3.2安装配置 Ubuntu16.04下安装FFmpeg(超简单版) Qt编译后提示: /usr/bin/ld: 找不到 -lGL 安装libGL: sudo ...

  3. spfa 单源最短路究极算法

    学习博客链接:SPFA 求单源最短路的SPFA算法的全称是:Shortest Path Faster Algorithm.     SPFA算法是西南交通大学段凡丁于1994年发表的.    从名字我 ...

  4. python 生成器按指定大小读取文件

    #!/usr/bin/env python import osimport sys def read_file(fpath): Block_Size = 1024 with open(fpath,&q ...

  5. [CF1060E]Sergey and Subway[树dp]

    题意 给出 \(n\) 个点的树,求 \(\sum_{i=1}^n{\sum_{j=i}^n{\lceil \frac{dis(i,j)}{2} \rceil}}\) . \(n\leq 2 \tim ...

  6. 程序员大佬推荐的java学习路线

    作为我的第一篇博客,我第一个想到的就是在校时就看到的这篇文章.并且在之后的时间里自己都反复观看过,有时候这不单单是一篇学习路线,也是审视自己技术能力的里程碑,和激励自己的鞭挞绳. 先来个书籍清单: & ...

  7. REST-framework快速构建API--频率

    前面已经了解了API的认证和授权.认证,是对资源访问者的第一道门,必须有钥匙,你才能进来拿我的资源:授权,是对资源访问者的第二道门,虽然你进来了,但是你可以拿走什么资源,还是我说了算,就是授权. 当然 ...

  8. LHS 和 RHS----你所不知道的JavaScript系列(1)

      变量的赋值操作会执行两个动作, 首先编译器会在当前作用域中声明一个变量(如果之前没有声明过), 然后在运行时引擎会在作用域中查找该变量, 如果能够找到就会对它赋值.----<你所不知道的Ja ...

  9. phabricator 结合 arcanist 使用

    简介 arcanist 是 phabricator 接口的命令工具,主要用于提交 diff 和 push review 通过的commit. 安装 下载源码,然后指定系统的环境变量即可 $ some_ ...

  10. Jmeter(二十二)_jenkins配置gitlab插件与ant插件

    Docker部署接口自动化持续集成环境第四步,代码上传到远程仓库! 接上文:脚本上传Gitlab 服务器中的Jenkins通过Gitlab插件读取远程Git远程仓库中的代码,然后通过ant插件进行构建 ...