zoukankan      html  css  js  c++  java
  • DevExpress 换肤

    1.首先添加DevExpress.OfficeSkins和DevExpress.BonusSkins 两个引用。

     在Main()函数之前进行皮肤注册:

        static class Program
        {
            /// <summary>
            /// 应用程序的主入口点。
            /// </summary>
            [STAThread]
            static void Main()
            {
                DevExpress.UserSkins.BonusSkins.Register();//皮肤注册
                DevExpress.UserSkins.OfficeSkins.Register();
                DevExpress.Skins.SkinManager.EnableFormSkins();//激活窗体皮肤,否则窗体还是操作系统默认主题风格
                DevExpress.LookAndFeel.UserLookAndFeel.Default.SkinName = "Blue";          
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new XtraForm1());
            }
        }
    

      

    2.添加一个父窗体,加一个全局静态DefaultLookAndFeel 成员控制皮肤,其他所有的窗体都继承该父窗体。

         public partial class frmBase : DevExpress.XtraEditors.XtraForm
        {
    
            private static DefaultLookAndFeel gLobalDefaultLookAndFeel = new DefaultLookAndFeel();
    
            public static DefaultLookAndFeel GLobalDefaultLookAndFeel
            {
                get { return frmBase.gLobalDefaultLookAndFeel; }
                set { frmBase.gLobalDefaultLookAndFeel = value; }
            }
    
            public frmBase()
            {
                InitializeComponent();
            }
        }

    3.添加一个控制皮肤的窗体frmSkin:

        public partial class frmSkin : DevExpress.XtraEditors.XtraForm
        {
            public frmSkin()
            {
                InitializeComponent();
            }
    
            private void frmSkin_Load(object sender, EventArgs e)
            {
                foreach (DevExpress.Skins.SkinContainer skinc in DevExpress.Skins.SkinManager.Default.Skins)
                {
                    cboSkins.Properties.Items.Add(skinc.SkinName);
                }
            }
    
            private void cboSkins_SelectedIndexChanged(object sender, EventArgs e)
            {
                frmBase.GLobalDefaultLookAndFeel.LookAndFeel.SkinName = cboSkins.Text;
            }
    
            private void btnOK_Click(object sender, EventArgs e)
            {
                this.Close();
            }
        }

    则可利用该窗体控制全局皮肤风格:

    可根据需要将皮肤主题保存到配置文件中。

  • 相关阅读:
    第二阶段冲刺01
    第十三周进度条
    构建之法阅读笔记5
    水王2
    购买一批书的最低价格
    第十二周进度条
    个人工作总结08
    个人工作总结07
    人机交互设计分析之搜狗输入法
    第八周的学习进度条
  • 原文地址:https://www.cnblogs.com/sndnnlfhvk/p/2605085.html
Copyright © 2011-2022 走看看