老蜗牛写采集:一个漂亮的客户端-几个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 ...
随机推荐
- shell部分命令缩写
bin = BINaries /dev = DEVices /etc = ETCetera /lib = LIBrary /proc = PROCesses /sbin = Superuser BIN ...
- 从linux启动到rootfs的挂载分析
简单的来说,根文件系统包括虚拟根文件系统和真实根文件系统.在Kernel启动的初始阶段,首先去创建虚拟的根文件系统,接下来再去调用do_mount来加载真正的文件系统,并将根文件系统切换到真正的文件系 ...
- 5、四大组件之一-Activity与Intent
一.Activity的定义及作用 1)官方定义:Activity是Android应用程序提供交互界面的一个重要组件 . 也是Android最重要的组件之一 2)Activity是业务类 , 是承载应用 ...
- Python脚本控制的WebDriver 常用操作 <二十四> 定位frame中的元素
测试用例场景 处理frame需要用到2个方法,分别是switch_to_frame(name_or_id_or_frame_element)和switch_to_default_content() 如 ...
- Zabbix探索:资产信息的妙用
前一阵子还在考虑CMDB的问题,因此Zabbix中的Inventory,也就是所谓的资产信息,遭到了我的不少鄙视. 这几天在研究告警通知对应责任人的问题,突然想起Zabbix的资产信息中应该有这么一栏 ...
- NOR型flash与NAND型flash的区别
1) 闪存芯片读写的基本单位不同 应用程序对NOR芯片操作以“字”为基本单位.为了方便对大容量NOR闪存的管理,通常将NOR闪存分成大小为128KB或者64KB的逻辑块,有时候块内还分成扇区.读写时 ...
- 神经网络的学习 Neural Networks learing
1.一些基本符号 2.COST函数 ================Backpropagation Algorithm============= 1.要计算的东西 2.向前传递向量图,但为了计算上图的 ...
- shell ftp上传下载文件
1. ftp自动登录批量下载文件. #####从ftp服务器上的/home/data 到 本地/home/databackup#### #!/bin/bash ftp -n<<! open ...
- 【组队训练】2016 ACM/ICPC Asia Regional Dalian Online
因为不是一队……毫无晋级的压力……反正有压力也进不去呵呵呵…… 开场zr看1006我看1010.. 1010我一直在wa... zr的1006倒是比较轻松的过了...然后我让他帮我看10.... 跟他 ...
- light oj 1008 - Fibsieve`s Fantabulous Birthday
1008 - Fibsieve`s Fantabulous Birthday PDF (English) Statistics Forum Time Limit: 0.5 second(s) Me ...