Winform 换皮肤

winform换肤流程如下:

(1)程序入口,添加以下代码:

 

//换肤
        private void Skinjsj() {            
            DevExpress.UserSkins.BonusSkins.Register();
            DevExpress.UserSkins.OfficeSkins.Register();
            DevExpress.Skins.SkinManager.EnableFormSkins();

            FrmSkin f = new FrmSkin(this);
            f.ShowDialog(this);
        }

 

(2)添加引用

DevExpress.BonusSkins

 

DevExpress.OfficeSkins   

 

(3)DevExpress控件

拖一个DefaultLookAndFeel控件

(4)改变窗体继承

 

public partial class FrmSkin :DevExpress.XtraEditors.XtraForm


主代码:

 

 

  /// <summary>
        /// 把皮肤类型绑定到 LookUpEdit下拉框
        /// </summary>
        private void DataSkin()
        {
            ArrayList list = new ArrayList();
            //遍历皮肤,放到列表中
            foreach (DevExpress.Skins.SkinContainer skin in DevExpress.Skins.SkinManager.Default.Skins)
            {
                list.Add(skin.SkinName);
            }
            //数据绑定
            lookUpEdit1.Properties.DataSource = list;
            //是否显示列名
            lookUpEdit1.Properties.ShowHeader = false;
            //是否显示底部
            lookUpEdit1.Properties.ShowFooter = false;
            //显示第一项
            lookUpEdit1.ItemIndex = 0;
            //最多显示10个下拉项
            lookUpEdit1.Properties.DropDownRows = list.Count > 10 ? 10 : list.Count;
        }

主题改变事件:

 

 

 //皮肤 值改变事件
        private void lookUpEdit1_TextChanged(object sender, EventArgs e)
        {
            if (lookUpEdit1.Text.Length > 0)
            {
                defaultLookAndFeel1.LookAndFeel.SetSkinStyle(lookUpEdit1.Text);
            }
        }

 

 

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

 

posted @ 2015-04-27 15:14  Jackerson  阅读(437)  评论(0)    收藏  举报