使用Skin Editor自定义主题皮肤

MS Office是一套比较经典的办公软件,它包括多个应用产品,相似的风格,不同的功能,降低了用户的使用难度。

使用DevExpress除了使用多种内置皮肤外,还可以自定义特定的主题和样式。

新建工程

在VS 扩展菜单DevExpress中打开SkinEditor,路径为 C:\Program Files (x86)\DevExpress 18.1\Components\Tools\Windows Forms\SkinEditor2.exe

创建工程,并可以选择一个模板主题皮肤。

启动主界面,如下图所示,包括工具栏、元素列表、预览窗口、属性窗口和编辑窗口。

修改皮肤

可对多种元素进行颜色、样式等修改,为了快速实现效果,这里使用SkinPalette来一键修改。

修改前后的效果对比如下:

导出文件

修改皮肤后,设置皮肤名称(这个Skin Name在代码设置主题时需要使用)

在菜单栏中导出皮肤,创建程序集Bezier Blue.dll:

将自动生成C#和VB示例代码:

主题应用

在解决方案的工程中添加生成的自定义皮肤引用Bezier Blue.dll

在Main函数中添加引用

using System;
using System.Windows.Forms;
using DevExpress.Skins;
using DevExpress.LookAndFeel;
using System.Reflection;
using System.ComponentModel;
using DevExpress.XtraEditors;

namespace CustomSkinTest {
    static class Program {
        [STAThread]
        static void Main() {

            Assembly asm = typeof(DevExpress.UserSkins.MyCustomSkins).Assembly;
            DevExpress.Skins.SkinManager.Default.RegisterAssembly(asm);
            //启动或等待窗口注册
            //SplashScreenManager.RegisterUserSkins(asm);  
            SkinManager.EnableFormSkins();
            Application.Run(new XtraForm());
        }

        // 运行时主题可见,需要写入以下代码 
        public class SkinRegistration : Component {
            public SkinRegistration() {
                DevExpress.Skins.SkinManager.Default.RegisterAssembly(typeof(DevExpress.UserSkins.CustomSkin).Assembly);
            }
        }
    }
}

在主窗体中设置主题名称:

UserLookAndFeel.Default.SkinName = "Bezier Green";
posted @ 2021-10-30 06:56  我也是个傻瓜  阅读(1416)  评论(2编辑  收藏  举报