Skip to main content
All docs
V25.1
  • TcxCustomLookAndFeelController.SkinName Property

    Specifies the name of the active skin in an application.

    Declaration

    property SkinName: TdxSkinName read; write;

    Property Value

    Type Description
    TdxSkinName

    The name of the active skin. The specified skin is in effect when the NativeStyle property is set to False.

    Refer to the Remarks section for detailed information on available options.

    Remarks

    Use the SkinName property to apply a built-in or custom skin to all controls if the NativeStyle property is set to False. The LookAndFeel.SkinName property of an individual control has priority over the SkinName property.

    Built-in Skin Name List

    To apply a built-in skin to an application, assign one of the following skin names to the SkinName property:

    Vector Skins

    Vector skin elements consist of SVG images that render sharply regardless of the current monitor DPI.

    Tip

    We recommend that you use vector skins for an application that targets multi-monitor and high-DPI environments. If a vector skin is active, you can also use the SkinPaletteName property to switch between color palettes available for the skin.

    Microsoft Windows 11-Inspired Skins
    WXI | WXICompact
    Microsoft Office-Inspired Skins
    Office2019Black | Office2019Colorful | Office2019DarkGray | Office2019White
    Unique Skins Designed by DevExpress
    TheBezier | Basic

    Raster Skins

    Raster skins consist of bitmap-based skin elements. The application stretches these elements at high monitor DPI, which may result in blurry UI elements. Raster skins do not support palettes.

    Microsoft Office-Inspired Skins
    Office2016Colorful | Office2016Dark | Office2013DarkGray | Office2013White | Office2010Black | Office2010Blue | Office2010Silver | Office2007Black | Office2007Blue | Office2007Green | Office2007Silver | Office2007Pink
    Unique Skins Designed by DevExpress
    DevExpressDarkStyle | DevExpressStyle | Black | Blue | Pumpkin | Springtime | Summer2008 | Valentine | Xmas2008Blue | Blueprint | Caramel | Coffee | Darkroom | DarkSide | Foggy | GlassOceans | HighContrast | iMaginary | Lilian | LiquidSky | LondonLiquidSky | McSkin | Metropolis | MetropolisDark | MoneyTwins | Sharp | SharpPlus | Stardust | TheAsphaltWorld | Whiteprint
    Microsoft Visual Studio-Inspired Skins
    VisualStudio2013Blue | VisualStudio2013Dark | VisualStudio2013Light | VS2010
    Microsoft Windows 7-Inspired Skins
    Seven | SevenClassic

    Design-Time Skin Selection

    Select the TdxSkinController component, click the drop-down button for the SkinName property in the Object Inspector, and select any skin in the displayed list.

    VCL Shared Libraries: Apply a Skin in the Object Inspector

    Code Examples: Apply a Skin and its Palette

    The following code example applies the WXICompact skin and its Sharpness palette to an application:

      dxSkinController1.BeginUpdate;
      try
        dxSkinController1.UseSkins := True;
        dxSkinController1.NativeStyle := False;
        dxSkinController1.SkinName := 'WXICompact';
        dxSkinController1.SkinPaletteName := 'Sharpness';
      finally
        dxSkinController1.EndUpdate;
      end;
    

    VCL Shared Libraries: A Skinned Application Example

    Alternatively, you can call the SetSkin procedure:

      dxSkinController1.BeginUpdate;
      try
        dxSkinController1.NativeStyle := False;
        dxSkinController1.SetSkin('WXICompact', 'Sharpness');
      finally
        dxSkinController1.EndUpdate;
      end;
    

    Custom Skin

    To use a custom skin, do the following:

    Code Example: Load and Apply a Custom Skin

    The code example below loads a custom skin from a SKINRES file and applies the loaded skin to an application. If an attempt to load a custom skin is unsuccessful, the code example applies the WXICompact skin and its Sharpness palette to the application.

    uses
      dxSkinsDefaultPainters; // Declares the dxSkinsUserSkinLoadFromFile function
    // ...
    begin
      dxSkinController1.NativeStyle := False;
      if(dxSkinsUserSkinLoadFromFile('MySkin.skinres')) then
        dxSkinController1.SkinName := 'UserSkin'
      else
      begin
        dxSkinController1.SkinName := 'WXICompact';
        dxSkinController1.SkinPaletteName := 'Sharpness';
      end;
    end;
    

    Limitations

    You can load and apply custom skins only at runtime. At design time, you can apply only built-in skins.

    Interaction with VCL Styles

    The DevExpress Skin Engine and the VCL Styles technology are not compatible because they rely on different UI element rendering mechanisms.

    Important

    • We do not recommend that you use Embarcadero RAD Studio® VCL Styles in any application project that uses DevExpress controls.

    • We strongly recommend that you use only DevExpress skins to ensure the best possible appearance of DevExpress-powered VCL applications.

    Default Value

    The SkinName property’s default value is an empty string.

    See Also