基于C#的WinForm窗体美化(无须美工功底)
在近期的实训中,学习到了许多精髓的小知识。接下来我会发布几篇博客,分享我的开发经验。
在设计面向对象的UI层界面时,常常因为WinForm自身的窗体界面不够美观而去反复修改各种控件的位置。当然在不同的Windos中,WinForm所具有的主题也是不同的,但对于颜控的我们,这些也是无法满足的。
所以今天我分享一个关于简单的对窗体进行美化的一个小技巧。
为了帮助用户追求美观,.NET 4.0 专门为对此有需求的人提供了IrisSkin4.dll皮肤引用集,里面封装了许多对窗体重新描绘的方法,再搭配上WinForm特有的 .ssk 文件,就可以实现窗体的主题式美化,下面介绍如何使用这个皮肤引用集(用例项目名称为:Test 开发环境:Visual Studio 2012):
- 将IrisSkin4.dll下载至电脑中,并建议将该文件存放至项目的Debug中。(方便引用)
- 进入项目,右键点击Test窗体类的引用->点击”浏览“->找到项目的Debug文件夹->双击IrisSkin4.dll文件->点击确定后,在引用集里就会出现“IrisSkin4”
- 打开工具箱(看不到的请点击菜单栏中的视图->工具箱即可),然后在工具箱的空白处右键->添加选项卡,名称怎么好记怎么起,新建好应该会有“此组中没有可用控件”,然后将我们Debug中的IrisSkin4.dll文件,直接拖动到这些字上,也就是往这个选项卡里加控件。成功后如下图:
- 然后拖动SkinEngine控件到窗体上,成功后如下图:
- 自此美化窗体的环境全部搭建完成。
有了环境之后,窗体的美化工作就和我们平时接触到的换肤操作有些相似(就是选择一个皮肤,然后点击更换),但在C#窗体开发中,这种“换肤操作”不是很容易的。首先要明白一个点就是,窗体的皮肤文件都是以 “.ssk”为后缀名的,所以,我们要先去制作窗体的皮肤文件,才能实现“换肤”。(但是这就需要美工基础了,所以博主在这里提供了一些现成的美观的ssk文件提供阅读者下载,皮肤不是我做的,我整理的,尊重原作者。)
下面,我就给阅读者简单的分享一下流程吧:
- 首先将现成的.ssk文件放在项目的Debug中,这也是方便引用。(用例为DeepCyan.ssk)
- 然后在Form1.cs的InitializeComponent();下添加如下代码:
this.skinEngine1 = new Sunisoft.IrisSkin.SkinEngine(((System.ComponentModel.Component)(this)));
this.skinEngine1.SkinFile = Application.StartupPath + "//皮肤文件名";
用例中如图:
3. 然后保存代码,我们试试看效果怎么样!
4. 自此美化界面基本完成,是不是很容易。无须美工基础,简单的审美即可。
这种简单的窗体美化有助于开发的系统整体保持一个风格,增强用户的体验性和视觉感受。
下面为博主提供的IrisSkin4.dll文件和一些做好的ssk皮肤。