《更换dev皮肤》由会员分享,可在线阅读,更多相关《更换dev皮肤(4页珍藏版)》请在金锄头文库上搜索。
1、DevExpress.Winform之之更更换换主主题题2010 年 4 月 25 日 admin 发表评论 阅读评论 1、准备当新建“Form”时,选择 DevExpress Form 为模板,就可以应用 DevExpress 的主题了。此时,From 继承的是“DevExpress.XtraEditors.XtraForm”。默认情况下,系统主题有:CaramelMoney TwinsLilianThe Asphalt WorldiMaginaryBlackBlueDevExpress 提供了更多的主题, 我们如果应用的话,必须添加以下引用 :DevExpress.OfficeSkins.
2、v8.1;DevExpress.BonusSkins.v8.1;除此之外,必须在“Program.cs”文件在添加如下代码:DevExpress.UserSkins.BonusSkins.Register();DevExpress.UserSkins.OfficeSkins.Register();Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);if (!DevExpress.Skins.SkinManager.AllowFormSkins)DevExpress.Skins
3、.SkinManager.EnableFormSkins();Application.Run(new MainForm();其中“OfficeSkins”中的主题有:Office 2007 BlueOffice 2007 BlackOffice 2007 SilverOffice 2007 GreenOffice 2007 Pink“BonusSkins”的主题有:CoffeeLiquid SkyLondon Liquid SkyGlass OceansStardustXmas 2008 BlueValentineMcSkin(注:本人 DevExpress 为 v8.1 版本)2、添加更换皮
4、肤菜单项通过“foreach(SkinContainer cnt in SkinManager.Default.Skins)”可以获取现有所有主题皮肤名称,可以把获取的主题添加到菜单上,让用户选择自己喜爱的主题样式。通过函数“DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(string skinName)”设置主题名称,可以更换主题示例代码如下(直接加到程序中即可,该示例将初始化时的主题设置为”Office 2007 Blue”,大家可自行更改):public partial class MainForm : DevExp
5、ress.XtraEditors.XtraFormBarSubItem ChangeSkin = new BarSubItem();public MainForm()InitializeComponent();InitSkins();private void InitSkins()string DefaulSkinName = “Office 2007 Blue”;DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(DefaulSkinName);ChangeSkin.Caption = “更换皮肤”;this.barMana
6、ger1.Items.Add(ChangeSkin);this.bar2.LinksPersistInfo.AddRange(new DevExpress.XtraBars.LinkPersistInfo new DevExpress.XtraBars.LinkPersistInfo(ChangeSkin), );foreach (DevExpress.Skins.SkinContainer cnt in DevExpress.Skins.SkinManager.Default.Skins)BarButtonItem item = new BarButtonItem(barManager1,c
7、nt.SkinName);ChangeSkin.AddItem(item);item.ImageIndex = -1;item.ButtonStyle = BarButtonStyle.Check;item.GroupIndex = 1;item.ItemClick += new ItemClickEventHandler(OnSkinClick);foreach (BarItemLink link in ChangeSkin.ItemLinks)if (link.Item.Caption = DefaulSkinName)link.Item.PerformClick();void OnSkinClick(object sender, ItemClickEventArgs e)string skinName = e.Item.Caption;DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(skinName);