C# 使用SkinSharp皮肤库

摘要:
SkinSharp是Windows环境下功能强大的通用护肤库。SkinSharp使用独特的软件界面开发技术,使原本复杂而乏味的界面编程变得容易。SkinSharp护肤库目前支持所有流行的开发工具。SkinSharp可以在不修改客户端程序的情况下更改Windows上运行的任何程序的外观,将程序界面与业务逻辑完全分离,这样您就可以轻松完成程序界面的完美升级。

SkinSharp是Windows环境下一款强大的通用换肤库。

SkinSharp作为通用换肤库,只需要在您的程序中添加一行代码,就能让您的界面焕然一新,并拥有多种主题风格和色调的动态切换功能以及Aero透明边框特效。

SkinSharp采用独特的软件界面开发技术,让原本复杂繁琐的界面编程变得轻松自如。SkinSharp换肤库目前支持所有流行的开发工具。SkinSharp可以在不修改客户程序的基础上,对在Windows上运行的任何程序进行随意换肤,完全实现了将程序界面与业务逻辑彻底分离,从而可以让您轻松地完成程序界面的完美升级。

官网:http://www.skinsharp.com/htdocs/index.htm

文件说明:

SkinH_Net.dll SkinSharp换肤引擎, 标准的动态链接库

SkinH_CS.dll SkinSharp引用类库

skinh.she SkinSharp默认皮肤

现以最基本Attach()接口演示如何用一句代码进行换肤。其他接口可以参考官网的文档中心。

Attach()接口默认加载程序当前目录下的skinh.she文件进行换肤。

1. 创建C#.Net Windows应用程序

2. 拷贝软件包Bin目录中的SkinSharp相关文件 (SkinH_Net.dl SkinH_CS.dll skinh.she)到程序输出目录下

3. 添加接口类库SkinH_CS.dll的引用

ps:在解决方案那里找到引用=》右键=》添加引用=》选择SkinH_CS.dll

4. 为达到完美效果,需要将视觉样式选项去掉,在Program.cs 文件的Main函数中将启用视觉样式的代码注释

//Application.EnableVisualStyles();

5. 添加换肤代码

using SkinSharp;

namespace SkinSharp_Demo
{
    public partial class Form1 : Form
    {
        public SkinH_Net skin;
        public Form1()
        {
            skin = new SkinH_Net();
            skin.Attach();
            InitializeComponent();
        }

参数说明

Attach();//加载程序当前目录下的文件名skinh.she皮肤进行换肤

AttachEx("皮肤路径", "");//加载指定路径的皮肤进行换肤

AttachExt("皮肤路径", "");//加载指定路径的皮肤进行换肤并指定相应的色调,饱和度,亮度

AttachRes(Properties.Resources.storm, Convert.ToUInt32(Properties.Resources.storm.Length), "", 0, 0, 0);//加载指定资源进行换肤,其中的storm即为添加的资源文件,不需要添加she后缀

Detach();//卸载换肤 (注意:在换肤或者程序退出时换肤库会自动卸载当前皮肤,无需再调用此接口进行卸载)

DetachEx();//卸载指定句柄的窗体或者控件的皮肤
SRET_OK0操作成功
SRET_ERROR1操作失败
SRET_ERROR_READ2皮肤文件读取失败
SRET_ERROR_PARAM3参数错误
SRET_ERROR_CREATE4创建皮肤失败
SRET_ERROR_FORMAT5皮肤格式错误
SRET_ERROR_VERSION6皮肤版本错误
SRET_ERROR_PASSWORD7皮肤密码错误
SRET_ERROR_INVALID8皮肤引擎错误

免责声明:文章转载自《C# 使用SkinSharp皮肤库》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇if的用法PHP类和对象函数实例详解下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

ubuntu网卡配置

网卡配置文件采用YAML格式,必须以/etc/netplan/XXX.yaml文件命名方式存放可以每个网卡对应一个单独的配置文件,也可以将所有网卡都放在一个配置文件里自动获取IProot@ubuntu1804:~#cat/etc/netplan/01-netcfg.yaml#Thisfiledescribesthenetworkinterfacesavail...

Asp.Net开源服务端框架,WebApi后端框架(C#.NET)

本文主要介绍了基于Asp.Net平台、C#语言+SQL数据库的服务器的WebApi后端框架。K=WebApi&c=1&p=1.NETWebApi开发框架|MVC框架|后端框架|服务器框架-标准版本V1.0适用开发:快速构建支持多个客户端的服务器程序,并支持APP、B/S、c/S跨平台移动终端等。C/S系统开发框架的高级版本或更高版本支持多种后...

django的优缺点(非原创)

Django做了很多。使用它快速开发一些Web应用程序是很好的。因此,在一些人眼中,Django只不过是一种灵丹妙药,但对一些人来说,它也是一种毒药和剧毒。Django开发人员也讨论并试图支持SQLAlchemy,但最终放弃了。据估计,成本太高,很难与Django的其他模块集成。尽管Django的ORM不如SQLAlchemy强大,但它并不弱。Django的...

mysql修改字段防止锁表

步骤1:修改大表、addcolumn或dropcolumn的字段,操作完成后将锁定该表。此时,查询ok、insert和update将等待锁定。...

学习Python3 天眼查 爬虫

在开始学习Python时,我不想看基础知识,而且我的记忆力很差。我记不住那些语法,所以我直接去了这个项目。这是相当深刻的。刚好公司有情况需要检查企业的信息,所以我想成为一名爬虫。那些有验证码的人不愿意这样做。这是个大问题。我选择了天眼查,跳过检查过程,直接写下结果。总结的步骤如下:首先,天眼查最大的障碍是字体问题。本网站上有介绍,大致意思是网页上显示的一些字...

【工具技巧】:sublime notepad++ 多行编辑

将光标定位到一行-˃ctrl+shift+↑↓, 上下移动一行。选择-˃ctrl+shift后+↑↓, 上下移动所选区域。再次按6:Ctrl+Shift+Enter在光标前插入一行。...