C# Winform中窗体的美化—— 用IrisSkin轻松实现换肤功能
解决方法是:在解决方案资源管理器中的工程项上点击右键,选择属性,把FrameWork的框架版本改为.Net4即可。
(2)网址:http://zhidao.baidu.com/link?url=YOvAeHLkOgmE-XKa7YnVFs4qE4a--5bsCKxweIDuYgHwU-TygCGKm1hePlWTDrQ4X9eIjOZfLaqVgWsp2eUgF_
C# 错误!!容量超出了最大容量。参数名: capacity
最后效果图
弹框这出现的错误上边有,改成提示两个字就好了。
如果想把这个样式应用到所有窗体中,就在属性中把SkinAllForm设置成true,不想就是False。还有把SkinFile选择样式文件的路径,然后才能显示样式。
@"\DiamondBlue.ssk";
"DiamondBlue.ssk";
//样式文件的文件名
出处:http://blog.sina.com.cn/s/blog_e75e0d9d0102wxk6.html
===================================================================================================
IrisSkin2.dll是一款很不错的免费皮肤控件,利用它可以轻松的实现WinForm窗体换肤然而IrisSkin2.dll只能在.NET Faremwork 4.0以及之前的版本使用,所以要在VS2010中使用它需要将自己的项目框架设置为.NET Framework 4.0,还有另一种方法就是使用IrisSkin4.dll,他的使用方法和IrisSkin2.dll基本是完全一样的
一、首先在网上下载 IrisSkin4.dll (已与皮肤一起打包),将IrisSkin4.dll与Skins(皮肤)一起拷贝到项目的\bin\Debug文件夹下
二、在程序的资源管理器中的【引用】上单击右键,选择【添加引用】,找到刚才复制过来的IrisSkin4.dll文件,点击【确定】


三、【工具】——>【选择工具箱项——>【.NET Framework组件】——>【浏览】——>找到IrisSkin4.dll——>点击【确定】,SkinEngine控件加入到工具箱



四、把控件添加进程序的主窗体,并在主窗体的构造函数中编辑如下一行代码选择皮肤,即可完成渲染
skinEngine1.SkinFile = System.Environment.CurrentDirectory + "\\Skins\\所选皮肤名(后缀为.ssk)"; //选择皮肤文件
使用IrisSkin4.dll换肤的效果是有限的,有时它的渲染效果反而令我们抓狂(比如我用了一个SportsBlue皮肤,然后发现虽然这个皮肤的样式我很喜欢,但在它的渲染下窗体的button实在是很low),这时我们想要自定义自己不满意的控件而不需要皮肤对这些控件进行渲染,只需加上如下一行代码:
skinEngine1.DisableTag = 9999; //设置不需要被渲染的控件Tag值为9999
然后把不需要被渲染的控件Tag值属性设置为9999,即可显示该控件的自定义样式
出处:http://www.tuicool.com/articles/Q3euaa
===================================================================================================
最近做一些C#数据库开发项目,基本窗体程序做好之后,发现界面较为丑陋,然而,自己又不善于美工,所以想到了求助于第三方帮忙。网上有较多的是利用IrisSkin2.dll文件来开发,然后,本人按照一些解决方案做下来,发现该链接库并不会适合VS2010平台开发的Winform,故此,寻找替代方案,然后,发现了IrisSkin4.dll比较合适的完成了美化工作。综合别人的做法,本人做法如下:
下载地址:http://www.7edown.com/soft/down/soft_39263.html
1. 将IrisSkin4.dll动态文件导入当前项目引用中。具体操作为:解决方案资源管理器->当前项目->引用->右键->添加引用,找到IrisSkin4.dll文件,然后加入即可。建议,最好把IrisSkin4.dll文件放在当前项目\bin\Debug文件中。
2. 然后把IrisSkin4.dll文件添加到VS2010的工具箱:视图->工具箱->右键->选择项->浏览找到IrisSkin4.dll文件(文件最好放在当前项目\bin\Debug文件中)按确定,控件就添加到工具箱中了,然后把工具箱中新添加的 SkinEngine控件拖到当前项目中。
3. 把皮肤目录中的.ssk文件复制到当前项目\bin\Debug文件中,ssk文件可以根据需求自己选择.
4. 再在项目中调用.ssk皮肤文件。例:
在自己的主程序的MainForm窗口对应的 MainForm.Designer.cs中,先声明private Sunisoft.IrisSkin.SkinEngine skinEngine1;然后是在InitializeComponent() (Windows 窗体设计器生成的代码)定义
this.skinEngine1 = new Sunisoft.IrisSkin.SkinEngine(((System.ComponentModel.Component)(this))); |
最后,在MainForm.cs文件中构造函数定义:
this.skinEngine1.SkinFile = Application.StartupPath + "//DiamondBlue.ssk"; |
同时,为了保证对其他的窗体也产生相应的效果,则在MainForm对应的构造函数中,加入如下代码:
|
1
|
Sunisoft.IrisSkin.SkinEngine se = null; new Sunisoft.IrisSkin.SkinEngine(); true; |
出处:http://www.cnblogs.com/zhaoxiaoming/archive/2012/07/25/Form_Beautify.html
===================================================================================================
外,由于皮肤使用了很多的ssk文件以及dll文件,有时不想要这么多的文件,只是想生成一个exe的应用程序,使用可以把ssk和dll文件整合进exe文件中,具体的可以参考我的另外一篇文章:皮肤和DLL和图片等项目文件完全整合到exe中
C# Winform中窗体的美化—— 用IrisSkin轻松实现换肤功能的更多相关文章
- .NET vs2010中使用IrisSkin2.dll轻松实现winForm窗体换肤功能
IrisSkin2.dll是一款很不错的免费皮肤控件,利用它可以轻松的实现winForm窗体换肤! 网上很多朋友说在VS2010中不能使用IrisSkin2.dll,我这里提供一个取巧的办法. Iri ...
- C# winform中 窗体缩放自适应的方法(不同电脑/不同分辨率)
C# winform中 窗体缩放自适应的方法(不同电脑/不同分辨率) 窗体缩放是一个困扰我多时的问题,为了解决这个问题,我从网上找了很多相关的资料,很多人说用Anchor和Dock属性,但是我试了 ...
- C# WinForm界面美化--使用IrisSkin实现换肤功能
WinForm界面使用IrisSkin,可以说做到了一键美化,当然美化的效果仁者见仁智者见智,可以挑选自己喜欢的. 1.IrisSkin下载地址:https://www.cr173.com/soft/ ...
- C#.NET vs2010中使用IrisSkin4.dll轻松实现WinForm窗体换肤功能
IrisSkin2.dll是一款很不错的免费皮肤控件,利用它可以轻松的实现WinForm窗体换肤 然而IrisSkin2.dll只能在.NET Faremwork 4.0以及之前的版本使用,所以要在V ...
- c# winform中窗体切换后释放及防止重复生成
问题1:窗体切换后如何关闭,并释放资? c# winform中,2个窗体,form1和form2,互相切换的时候执行 this.Hide(); Form2 form2 = new Form2(); f ...
- C# WInForm中 窗体的this.width和this.height的属性值不能大于显示器的最大分辨率
最近在做一个小项目的时候,发现在 1680x1050 分辨率显示器上写的代码,将窗体的宽度和高度 设置成了 1600×900,在高于1600×900的分辨率上缩放显示很正常, 而后转移到 分辨率低于 ...
- Winform- IrisSkin.dll轻松实现窗体换肤功能
IrisSkin2.dll是一款很不错的免费皮肤控件,利用它可以轻松的实现winForm窗体换肤 然而IrisSkin2.dll只能在.NET Faremwork 4.0以及之前的版本使用,所以要在V ...
- 在Winform中怎么实现图片的旋转,比如说实现仪表盘功能,看代码吧,看太不懂的欢迎问
; //旋转的角度 //Timer定时器 private void timer1_Tick(object sender, EventArgs e) { timer1.Enabled = false; ...
- Android中插件开发篇之----应用换肤原理解析
一.前言 今天又到周末了,感觉时间过的很快呀.又要写blog了.那么今天就来看看应用的换肤原理解析.在之前的一篇博客中我说道了Android中的插件开发篇的基础:类加载器的相关知识.没看过的同学可以转 ...
随机推荐
- Python学习进程(9)序列
序列是Python中最基本的数据结构. (1)序列简介: 序列中的每个元素都分配一个数字标明它的位置或索引,第一个索引是0,第二个索引是1,依此类推.序列都可以进行的操作包括索引,切片,加,乘 ...
- openGL学习进程(1)OpenGL的简介
通过本节,我们来简要了解一下openGL. (1)OpenGL概述: openGL(Open Graphics Library)是个专业的图形程序接口,定义了一个跨编程语言.跨平台的编 ...
- flex 实现图片播放 方案一 图片全部预加载放内存
这种方案,对于web的应用有局限性,在图片量比较多,比较大的时候,就会爆浏览器异常.一般建议轻量级的采用这种方案. <?xml version="1.0" encoding= ...
- Windos Server Tomcat 双开配置
Tomcat 双开配置 tomcat_1 server.mxl文件 # 修改端口 <Connector port=" protocol="HTTP/1.1" c ...
- vRO Extend VirtualDisk Workflow
https://vbombarded.wordpress.com/2015/02/20/vrealize-orchestrator-extend-virtual-disk-workflow/ var ...
- 使用shell统计字符串出现的次数,并从大到小进行排序显示
- iBatis的Settings节点参数详解[转]
(1) cacheModelsEnabled: 是否启用SqlMapClient上的缓存机制.建议设为"true".默认值为“true”. (2) enhancementEnabl ...
- EntityFramework 学习 一 Multiple Diagrams in Entity Framework 5.0
Visual Studio 2012 provides a facility to split the design time visual representation of the Entity ...
- repo 小结
repo只是google用Python脚本写的调用git的一个脚本,主要是用来下载.管理Android项目的软件仓库. 1. 下载 repo 的地址: http://android.git.kerne ...
- JMeter 3.0 POST Body Data 中文乱码问题
现象如下图所示: