搞采集多年,避免不了搞个简单的UI来曹州,所谓人靠衣装马靠鞍,一套漂亮的皮肤会给你的程序带来高大上的感觉。有时候老板也是看心情的,好的东西总归可以避免点缺点。今天给大家介绍几个曾经研究过的WinForm UI。

1.件苏飞写的仿QQ皮肤控件

  话说本牛研究过的皮肤,第一个就是启蒙的皮肤组件苏飞写的仿QQ皮肤地址如下:http://www.sufeinet.com/forum-73-1.html,看看效果图:

  优点:简单易懂

  缺点:缺点很明显,因为大量的控件都是用UserControl拼凑起来的,所以效率不高。有空的可以尝试尝试,同时也是个学习的工具

2.仿QQ的Paway.Windows.Forms

  作者不详,csdn有下载,地址为:http://download.csdn.net/detail/xinshoubbs/4027994

  优点:比较简单易懂,基于GDI+绘制的窗体,程序带三个小demo,基本满足你对界面的需求,可以进行自定义。

  缺点:也是太简单,bug很多,需要耐心去填坑,不过有也比没有强,至少不用完全自己早轮子。

  接下来要介绍两个不开源的皮肤组件

3.CSkin界面库

  本牛研究时,名叫SkinForm,后来更名为CSkin这个在界面库应该比较出名也是基于GDI+绘制窗体,这个组件拥有完善多样的控件。绝对能满足你多样需求。后来作者又推出了基于DirectUI的DSkin,本牛没试,因为要钱。所以要求更高的朋友可以购买试试。地址为:cskin.net ,现在发展不错,功能很多。

  优点:不用多说,谁用谁知道

  缺点:控件的属性太多,代码有点乱。

4.DMSkin

  前身是MySkin,如果记得没错的话。这个组件完全是业余去研究,看了一下代码,感觉会比CSkin好点,但功能没有这么强大。地址为:

  http://www.dmskin.com/

    优缺点,既然没用,就暂且不予评论。

5.大名鼎鼎的Telerik UI

  Telerik UI开发了一系列UI组件了,Winform皮肤也仅仅是其中一员,网上有泄露的源码版本,本牛小试了一下,感觉效果还是比CSkin、DMSkin的少,如果要自己动手改,想想还是算了。

6.自己造的轮子

  介绍了以上这么多组件,感觉好的已经闭源了,开源的自己又吃不消,好像Telerik这样的大公司开发的,类库比较复杂,不过我很欣赏他的皮肤事件响应,每一个渲染都会产生一个事件,利用好这些事件,应该可以干很多事。基于以上考虑,还是自己再造一次轮子,基于GDI+编写的一个泛皮肤框架,啥为之泛皮肤框架,有兴趣的同学可以看看源码,自然会体会到有什么不同。

  源码地址为:https://github.com/weitaoxiao/ClientEngine

  

  C#.NET开源项目、机器学习、足球赛事资料库

  开源Q群:302961959

  足球研究技术群:142780296

本人需要招聘C#程序员,欢迎志同道合人士加入

http://job.cnblogs.com/offer/51467/

老蜗牛写采集:一个漂亮的客户端-几个C#平台下的Winform 皮肤控件的更多相关文章

  1. 用c#写的一个局域网聊天客户端 类似小飞鸽

    用c#写的一个局域网聊天客户端 类似小飞鸽 摘自: http://www.cnblogs.com/yyl8781697/archive/2012/12/07/csharp-socket-udp.htm ...

  2. Winform DevExpress控件库(一) DevExpress控件库的安装与新建第一个DevExpress项目

    前言:因为这段时间要接触到DevExpress控件库,而我本身甚至对winform的控件都了解甚少,所以处在学习中,写下博客主要是为了方便后期的回顾,当然也可以给一些新人第一次接触时做为学习的参考,以 ...

  3. 帮同事写了几行代码,在 安装/卸载 程序里 注册/卸载 OCX控件

    写了个小控制台程序,这个程序用来注册 / 卸载OCX控件,用在Inno Setup做的安装卸载程序里. #include "stdafx.h" #include <windo ...

  4. 客户端的javascript改变了asp.net webform页面控件的值,后台代码中如何获取修改后的值。

    客户端的javascript改变了asp.net webform页面控件的值,后台代码中如何获取修改后的值.     无论是什么的html控件,只要加上了runat="server" ...

  5. 用js写出一个漂亮的单选框选中效果

    一般的input框比较简单,我们可以用JavaScript配合css背景图片定位让我们模拟写出一个点击选中效果 首先需要有个图片素材,当页面加载的时候是背景图片定位到左图,当我们点击图片的时候,背景图 ...

  6. 可以创建专业的客户端/服务器视频会议应用程序的音频和视频控件LEADTOOLS Video Conferencing SDK

    LEADTOOLS Video Streaming Module控件为您创建一个自定义的视频会议应用程序和工具提供所有需要的功能.软件开发人员可以使用Video Streaming Module SD ...

  7. 扩展GridView实现的一个自定义无刷新分页,排序,支持多种数据源的控件TwfGridView

    最近项目View层越来越趋向于无刷新化,特别是数据展示方面,还要对Linq有很好的支持.在WebFrom模式的开发中,GridView是一个功能很强大,很常用的控件,但是他也不是完美的,没有自带的无刷 ...

  8. setFocus一定要写在setLayout设置的后面,否则不起作用——使用setFocusPolicy为控件设置不同的焦点策略:Tab焦点,Click焦点,Wheel焦点和没有焦点

    QLineEdit* pEditor = new QLineEdit(m_strText);    pEditor->resize(.......);    pEditor->move(. ...

  9. 发现 TSplitter 在嵌套时不好用, 索性写了个替代品(处理MouseDown,MouseMove,MouseUp,然后设定控件的Left值就可以了)

    代替 TSplitter 的 TDirPanel 类: unit DirPanel; interface uses   Classes, Controls, Forms, ExtCtrls; type ...

随机推荐

  1. 【转】Qt Creator在Windows上的调试器安装与配置

    https://www.librehat.com/qt-creator-on-windows-debugger-installation-and-configuration/

  2. CentOS7 安装98五笔输入法

    86版的安装方式,网上找到一堆,折腾了很久才把98版的安装上,记录一下. 从这里下了这个 http://bbs.chinaunix.net/forum.php?mod=viewthread&t ...

  3. USB HID报告及报告描述符简介

    在USB中,USB HOST是通过各种描述符来识别设备的,有设备描述符,配置描述符,接口描述符,端点描述符,字符串描述符,报告描述符等等.USB报告描述符(Report Descriptor)是HID ...

  4. Ubuntu 设置简单密码,复杂度太高

    Ubuntu 中创建的用户密码复杂度很高,如果想设置1234 ,或者与账户名相同的密码时,SystemSetting 中是不可以设置的. 可以通过简单的命令来设置 其中 anyongfei 是账户名 ...

  5. vim讲解

    文本编辑vi使用 最好使用vim,采用sudo apt-get install vim vi是Linux及类Unix系统中主流的命令行文本编辑器,功能极为强大,vim是增强版本的vim.Vim的高级地 ...

  6. HTTP 报文总结、外送两本电子书

    写在前面的话:喜欢这个比喻:如果说HTTP是因特网的信使,那么HTTP报文就是它用来搬东西的包裹. HTTP是一个应用层协议,研究它的内容的确很枯燥,没啥意思,都是规定好的,我们只需要知道是什么就好了 ...

  7. 题解西电OJ (Problem 1008 - 数星星)

    题目内容: Description “不要问我太阳有多高 我会告诉你我有多真 不要问我星星有几颗 我会告诉你很多很多” 一天Qinz和wudired在天上数星星,由于星星可以排列成一条直线,他们比赛看 ...

  8. SQL2008-不同数据库之间的触发器

    create trigger tr_update_Table_1   on   rwqd     FOR  UPDATE   As   update dataabc.dbo.Table_1  set ...

  9. 关于PCB布线的顺序到底是怎样才合理?

    有人说先布好电源线和地线,让它们尽量靠近走,然后再考虑信号线:也有人说先布好关键的信号线,然后再走电源和地线:还有人说先布好电源线,再布信号线,地线最后布.到底怎么样才算好呢?或者说,一般应按照什么顺 ...

  10. 4.22 注入js需要加 addjavascriptinterface

    由于项目需要,再次使用到了android的webview,webview要加载的页面是html5的页面: 需要有点击webview中的控件的交互,所以需要在android应用中注入一个js对象: 通过 ...