DevExpress 皮肤不工作

Posted

技术标签:

【中文标题】DevExpress 皮肤不工作【英文标题】:DevExpress Skins not working 【发布时间】:2012-04-24 19:56:39 【问题描述】:

有没有人会导致他们的控件的 devExpress 皮肤选项不起作用?

例如,如果我将控件的 skinName 更改为 Office 2010 Black,它不会执行任何操作。

谢谢。

【问题讨论】:

【参考方案1】:

您需要注册皮肤。通常,您在应用程序启动时应用应用程序范围的皮肤。

在DevExpress online Documentation查看这篇文章。

这是我通常做的:

DevExpress.UserSkins.BonusSkins.Register(); DevExpress.UserSkins.OfficeSkins.Register();

您需要添加 DevExpress 的皮肤 DLL 的引用。之后你就可以使用你想要的皮肤了:

defaultLookAndFeel1.LookAndFeel.SetSkinStyle("Office 2010 Silver");

defaultLookAndFeel1 是从工具箱拖到 WinForm 上的控件。建议将其拖动到基本表单。然后从基本表单继承剩余的表单,所有应用程序将提供一致的外观。

更新: 最新的 DevExpress 更改了自定义皮肤的命名空间。最后两行可能对您很重要。

Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);

DevExpress.UserSkins.BonusSkins.Register();
DevExpress.Skins.SkinManager.EnableFormSkins();
DevExpress.Skins.SkinManager.EnableMdiFormSkins();

【讨论】:

其实我不需要做这些。我所缺少的只是“useDefaultLookAndFeel”。您必须将其关闭才能使您的自定义皮肤正常工作。要为表单中的所有控件设置外观,只需让您的表单继承自 XtraForm 并在此处设置 LookAndFeel。确保表单中的所有控件都设置为使用默认外观。 但是,您的回答帮助我意识到问题在于主要表单是从 defaultLookAndFeel1 读取的(即使我没有指定它)。所以我会把它标记为答案。 补充一点,当您的表单关闭 Glass 界面时,一些皮肤看起来最好。 (仅限 Win7),所以我建议将 XtraForm AllowFormGlass 设置为 false。 我找不到你提到的属性。你是怎么做到的? AllowGlass 属性现在消失了,我上次检查过。

以上是关于DevExpress 皮肤不工作的主要内容,如果未能解决你的问题,请参考以下文章