vcl-cxlookandfeels-dot-tcxcustomlookandfeelcontroller-5beebf0d.md
Specifies the name of the active skin in an application.
property SkinName: TdxSkinName read; write;
| 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.
|
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.
To apply a built-in skin to an application, assign one of the following skin names to the SkinName property:
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 SkinsWXI | WXICompactMicrosoft Office-Inspired SkinsOffice2019Black | Office2019Colorful | Office2019DarkGray | Office2019WhiteUnique Skins Designed by DevExpressTheBezier | Basic
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 SkinsOffice2016Colorful | Office2016Dark | Office2013DarkGray | Office2013White | Office2010Black | Office2010Blue | Office2010Silver | Office2007Black | Office2007Blue | Office2007Green | Office2007Silver | Office2007PinkUnique Skins Designed by DevExpressDevExpressDarkStyle | 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 | WhiteprintMicrosoft Visual Studio-Inspired SkinsVisualStudio2013Blue | VisualStudio2013Dark | VisualStudio2013Light | VS2010Microsoft Windows 7-Inspired SkinsSeven | SevenClassic
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.
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;
dxSkinController1->BeginUpdate();
try
{
dxSkinController1->UseSkins = true;
dxSkinController1->NativeStyle = false;
dxSkinController1->SkinName = "WXICompact";
dxSkinController1->SkinPaletteName = "Sharpness";
}
__finally
{
dxSkinController1->EndUpdate();
}
Alternatively, you can call the SetSkin procedure:
dxSkinController1.BeginUpdate;
try
dxSkinController1.NativeStyle := False;
dxSkinController1.SetSkin('WXICompact', 'Sharpness');
finally
dxSkinController1.EndUpdate;
end;
dxSkinController1->BeginUpdate();
try
{
dxSkinController1->NativeStyle = false;
dxSkinController1->SetSkin("WXICompact", "Sharpness");
}
__finally
{
dxSkinController1->EndUpdate();
}
To use a custom skin, do the following:
'UserSkin' string to the SkinName property at runtime.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;
#include "dxSkinsDefaultPainters.hpp" // Declares the dxSkinsUserSkinLoadFromFile function
// ...
dxSkinController1->NativeStyle = false;
if(dxSkinsUserSkinLoadFromFile("MySkin.skinres"))
dxSkinsController1->SkinName = "UserSkin";
else
{
dxSkinController1->SkinName = "WXICompact";
dxSkinController1->SKinName = "Sharpness";
}
You can load and apply custom skins only at runtime. At design time, you can apply only built-in skins.
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.
The SkinName property’s default value is an empty string.
See Also
TcxCustomLookAndFeelController.SkinPaletteName Property
TdxCustomRibbon.ColorSchemeName Property
cxDefaultLookAndFeelNativeStyle Global Constant
cxDefaultUseGlobalSkin Global Constant
TcxCustomLookAndFeelController Class