如果你对一成不变的窗体感到厌倦,希望以下内容能让你有所帮助,同时能体验各种不同窗体风格,实现实现C#窗体皮肤变换虽然说是没有什么技术含量,但是蛮有趣的。先来看看我的窗体效果吧。
这是正常的窗体:
窗体皮肤变换1:
窗体皮肤变换2:
窗体皮肤变换3:
好吧,现在就是现实的步骤了。。。
{dy}步
先把IrisSkin2.dll文件【添加到当前项目引用(解决方案资源管理器->当前项目->引用->右键->添加引用,找到IrisSkin2.dll文件
IrisSkin2.dll文件{zh0}放在当前项目\bin\Debug文件中. 【如果不放在Debug下正常情况下是不会处错误的。但是通过测试如果不放的话,添加上的控件很可能不好用,即不能向窗体上拖拽。所以,{zh0}放在debug下。】
第二步
然后把IrisSkin2.dll文件添加到vc2005的工具箱:右键->选择项(这里需要等一段时间)->浏览找到IrisSkin2.dll文件(文件{zh0}放在当前项目\bin\Debug文件中)按确定,控件就添加到工具箱中了.然后把工具箱中新添加的SkinEngine控件拖到当前项目中。
第三步
把皮肤.ssk文件复制到当前项目\bin\Debug文件中.
第四步
拖动skinEngine控件跟openFileDialog控件到窗体上,再在项目中调用.ssk皮肤文件。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// this.skinEngine1.SkinFile = "C:\\Documents and Settings\\Administrator\\桌面\\练习 WindowsApplication1\\bin\\Debug\\Skins\\XPGreen.ssk";
}
private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.Filter = "(*.ssk)|*.ssk|txt files (*.txt)|*.txt"; //文件名筛选器
openFileDialog1.FilterIndex = 1;
openFileDialog1.InitialDirectory = "C:\\Documents and Settings\\Administrator\\桌面\\练习 WindowsApplication1\\bin\\Debug\\Skins\\"; //初始目录
openFileDialog1.RestoreDirectory = true;
openFileDialog1.FileName = "新建文件夹";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
MessageBox.Show("成功更改皮肤");
}
}
private void openFileDialog1_FileOk(object sender, CancelEventArgs e)
{
string name = openFileDialog1.FileName.ToString();
this.skinEngine1.SkinFile = "C:\\Documents and Settings\\Administrator\\桌面\\练习" + name; //打开皮肤的路径
}
}
}