C#WinForm窗体美化(IrisSkin)
IrisSkin使用
参考:
https://blog.csdn.net/arrowzz/article/details/70176822
IrisSkin是对应WinForm的窗体美化器;
1、先导入名称空间
2、添加引用: using Sunisoft.IrisSkin
; 工具箱添加对应控件:SkinEngine;
3、属性说明: Active : 窗体美化器是否生效;DisableTag : 不使用美化的控件设置Tag属性与其相同,则取消美化;SkinAllForm : 当前的SkinEngine对象是否对所有窗体均生效;SkinFile : 使用哪个ssx文件美化窗体;
Code
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Sunisoft.IrisSkin;
using System.IO;
namespace irisskindemo
{
public partial class Form1 : Form
{
private SkinEngine skinEngine1; //定义皮肤控件
List<string> Skins; //定义皮肤List集合
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
this.skinEngine1 = new SkinEngine((Component)(this));
this.skinEngine1.SkinAllForm = false; //仅对当前窗体生效
this.skinEngine1.DisableTag = 8888; //不使用皮肤控件设置Tag为8888
this.button1.Tag = 8888; //button1不美化
//加载所有皮肤列表
Skins = Directory.GetFiles(Application.StartupPath + "//Skins//", "*.ssk").ToList();
//dataGridView1.Columns[0].HeaderText = "Skins";
Skins.ForEach(x =>
{
dataGridView1.Rows.Add(Path.GetFileNameWithoutExtension(x));//向
});
}
private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
if(dataGridView1.CurrentRow != null)
{
this.skinEngine1.SkinFile = Skins[dataGridView1.CurrentRow.Index];
this.skinEngine1.Active = true;
}
}
private void button4_Click(object sender, EventArgs e)
{
//恢复默认界面
this.skinEngine1.Active = false;
}
private void button3_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.ShowDialog();
}
private void button2_Click(object sender, EventArgs e)
{
//弹出一个MessageBox对话框
MessageBox.Show("IrisSkin Test");
}
}
}
效果