在你创建一个使用了任何 Developer Express 组件的项目时, 一个 DevExpres.Utils 库的引用会被添加到项目中。 这个库包含了用于所有组件的 helper 类,也提供了一些默认的皮肤 (例如 Caramel、Money Twins、Lilian 等)。 通过定制控件的外观与感觉设置,你可以自由地把这些皮肤应用于控件。

一些其他皮肤被装载在外部库中。 例如 Coffee Liquid Sky 和 Stardust 在 DevExpress BonusSkins 库中实现。 Office 2007 Blue、Office 2007 Black 和 Office 2007 Silver 皮肤装载在 DevExpress.OfficeSkins 库中。 另外,你可以使用 Skin Editor(皮肤编辑器) 工具新建皮肤。 要在项目中使用这些皮肤,你需要把这些皮肤库的引用添加到项目中,然后编写代码在运行时刻注册这些库。
  1. 把所需的皮肤库添加到项目的“引用”区。

    要在“属性”窗口中查看新皮肤,你可能需要关闭并重新打开这个项目。

  2. 在设计时刻或在代码中,通过 UserLookAndFeel.SkinName 属性把所需的皮肤应用到控件上。
  3. 把皮肤库的注册代码添加到项目中。 通常,应该在静态的 Main 函数中进行调用。

    I) 要注册装载在 DevExpress.BonusSkins 和 DevExpress.OfficeSkins 库中的皮肤,则调用位于 DevExpress.UserSkins 命名空间中的 BonusSkins OfficeSkins 类的 Register 静态方法。 例如,下列代码注册了在 DevExpress OfficeSkins 库中的皮肤:

    C#CopyCode image复制代码
    [STAThread]
    static void Main() {
        // Skin registration.
        DevExpress.UserSkins.OfficeSkins.Register();
        Application.Run(new Form1());
    }
    
    Visual BasicCopyCode image复制代码
    <STAThread> _
    Shared Sub Main()
        DevExpress.UserSkins.OfficeSkins.Register()
        '...
        Application.Run(New frmMain())
    End Sub
    

    II) 要注册由“皮肤编辑器”工具创建的自定义皮肤,则使用下列代码。 这里 SkinProject1 是包含皮肤信息的类名称,位于“皮肤编辑器”所生成的皮肤程序集中:

    C#CopyCode image复制代码
    DevExpress.Skins.SkinManager.Default.RegisterAssembly(
      typeof(DevExpress.UserSkins.SkinProject1).Assembly);
    
    Visual BasicCopyCode image复制代码
    DevExpress.Skins.SkinManager.Default.RegisterAssembly( _
      GetType(DevExpress.UserSkins.SkinProject1).Assembly)
    

    通过运行“皮肤编辑器”并重新生成皮肤,你也可以为自定义皮肤取得适当的注册代码 (查看 文件->创建程序集 菜单项)。 一旦皮肤被重新生成,“皮肤编辑器”会自动生成和显示所需的代码。