老蜗牛写采集:一个漂亮的客户端-几个C#平台下的Winform 皮肤控件
搞采集多年,避免不了搞个简单的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好点,但功能没有这么强大。地址为:
优缺点,既然没用,就暂且不予评论。
5.大名鼎鼎的Telerik UI
Telerik UI开发了一系列UI组件了,Winform皮肤也仅仅是其中一员,网上有泄露的源码版本,本牛小试了一下,感觉效果还是比CSkin、DMSkin的少,如果要自己动手改,想想还是算了。
6.自己造的轮子
介绍了以上这么多组件,感觉好的已经闭源了,开源的自己又吃不消,好像Telerik这样的大公司开发的,类库比较复杂,不过我很欣赏他的皮肤事件响应,每一个渲染都会产生一个事件,利用好这些事件,应该可以干很多事。基于以上考虑,还是自己再造一次轮子,基于GDI+编写的一个泛皮肤框架,啥为之泛皮肤框架,有兴趣的同学可以看看源码,自然会体会到有什么不同。
源码地址为:https://github.com/weitaoxiao/ClientEngine

  
开源Q群:302961959
足球研究技术群:142780296
本人需要招聘C#程序员,欢迎志同道合人士加入
http://job.cnblogs.com/offer/51467/
老蜗牛写采集:一个漂亮的客户端-几个C#平台下的Winform 皮肤控件的更多相关文章
- 用c#写的一个局域网聊天客户端 类似小飞鸽
		
用c#写的一个局域网聊天客户端 类似小飞鸽 摘自: http://www.cnblogs.com/yyl8781697/archive/2012/12/07/csharp-socket-udp.htm ...
 - Winform DevExpress控件库(一) DevExpress控件库的安装与新建第一个DevExpress项目
		
前言:因为这段时间要接触到DevExpress控件库,而我本身甚至对winform的控件都了解甚少,所以处在学习中,写下博客主要是为了方便后期的回顾,当然也可以给一些新人第一次接触时做为学习的参考,以 ...
 - 帮同事写了几行代码,在 安装/卸载 程序里 注册/卸载 OCX控件
		
写了个小控制台程序,这个程序用来注册 / 卸载OCX控件,用在Inno Setup做的安装卸载程序里. #include "stdafx.h" #include <windo ...
 - 客户端的javascript改变了asp.net webform页面控件的值,后台代码中如何获取修改后的值。
		
客户端的javascript改变了asp.net webform页面控件的值,后台代码中如何获取修改后的值. 无论是什么的html控件,只要加上了runat="server" ...
 - 用js写出一个漂亮的单选框选中效果
		
一般的input框比较简单,我们可以用JavaScript配合css背景图片定位让我们模拟写出一个点击选中效果 首先需要有个图片素材,当页面加载的时候是背景图片定位到左图,当我们点击图片的时候,背景图 ...
 - 可以创建专业的客户端/服务器视频会议应用程序的音频和视频控件LEADTOOLS Video Conferencing SDK
		
LEADTOOLS Video Streaming Module控件为您创建一个自定义的视频会议应用程序和工具提供所有需要的功能.软件开发人员可以使用Video Streaming Module SD ...
 - 扩展GridView实现的一个自定义无刷新分页,排序,支持多种数据源的控件TwfGridView
		
最近项目View层越来越趋向于无刷新化,特别是数据展示方面,还要对Linq有很好的支持.在WebFrom模式的开发中,GridView是一个功能很强大,很常用的控件,但是他也不是完美的,没有自带的无刷 ...
 - setFocus一定要写在setLayout设置的后面,否则不起作用——使用setFocusPolicy为控件设置不同的焦点策略:Tab焦点,Click焦点,Wheel焦点和没有焦点
		
QLineEdit* pEditor = new QLineEdit(m_strText); pEditor->resize(.......); pEditor->move(. ...
 - 发现 TSplitter 在嵌套时不好用, 索性写了个替代品(处理MouseDown,MouseMove,MouseUp,然后设定控件的Left值就可以了)
		
代替 TSplitter 的 TDirPanel 类: unit DirPanel; interface uses Classes, Controls, Forms, ExtCtrls; type ...
 
随机推荐
- CSS布局中——导航是非常常见的
			
导航绝对是页面布局中最常见的,为了不用每次去写,稍微贴个简单的导航模版出来,方便以后使用. <title>CSS菜单</title> <style type=" ...
 - XMPP 初探
			
最近刚好有机会碰到XMPP,把一些学习心得记录在这边. XMPP(Extensible Messageing and Presence Protocol)是一种IM的通讯协定,其前身为Jabber,后 ...
 - 临时禁用Resharper
			
Visual Studio 菜单 –> 工具 –> 选项 –> ReSharper –> Suspend按钮
 - Java多线程 -- 深入理解JMM(Java内存模型) --(五)锁
			
锁的释放-获取建立的happens before 关系 锁是Java并发编程中最重要的同步机制.锁除了让临界区互斥执行外,还可以让释放锁的线程向获取同一个锁的线程发送消息. 下面是锁释放-获取的示例代 ...
 - windows和linux间互传文件
			
方法1:Xshell传输文件 用rz,sz命令在xshell传输文件 很好用,然后有时候想在windows和linux上传或下载某个文件,其实有个很简单的方法就是rz,sz 首先你的Ubuntu需要安 ...
 - MSP430F5438点亮led
			
今天只是想点亮一个led灯,因为没有视频,搞得很多的东西都是自己摸,下午本来讲和咨询店家,TMD说好给一点技术支持,结果一点也不给,我真想草泥马了,其实代码早就写出来了,只是哥哥不知道这款开发板还有接 ...
 - python 网络编程 (二)---异常
			
异常 python的socket模块实际上定义了4种可能出现的异常: 1)与一般I/O 和通信问题有关的socket.error; 2)与查询地址信息有关的socket.gaierror; 3)与其他 ...
 - PHP与MySQL动态网站开发1
			
PHP内嵌在HTML中,置于 <?php ?> 标签内 一般php文件扩展名.php 在body结算标签之前 对于远程服务器,可以用ftp工具传程序 打印语句 echo'Hello Wor ...
 - Android实例-路径信息及文件和文件夹的操作(XE8+小米2)
			
结果: GetTempFileName:/storage/sdcard0/Android/data/com.embarcadero.Project1/files/tmp/tmp.iQIip24407 ...
 - A Tour of Go  Methods continued
			
In fact, you can define a method on any type you define in your package, not just structs. You canno ...