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 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.
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;
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:
- Launch the Skin Editor to create a new skin.
- Call the dxSkinsUserSkinLoadFromFile, dxSkinsUserSkinLoadFromFileByIndex, dxSkinsUserSkinLoadFromFile, or dxSkinsUserSkinLoadFromStreamByIndex global function to load a skin from a SKINRES file or stream.
- Assign the
'UserSkin'
string to theSkinName
property at runtime.
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'))
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.