Skip to main content
All docs
V25.1
  • Win10Palette Class

    A palette that can get the Windows accent color and app mode, and update the theme each time a user changes these Windows settings.

    Namespace: DevExpress.Xpf.Core

    Assembly: DevExpress.Xpf.Core.v25.1.dll

    NuGet Package: DevExpress.Wpf.Core

    Declaration

    public sealed class Win10Palette :
        ThemePalette

    Remarks

    Pass a Win10Palette object as a parameter to a Theme.CreateTheme method to generate a theme based on a Win10Dark or Win10Light DevExpress theme. The palette allows you to get the following Windows theme settings, listen to their changes, and apply them to your application:

    • Accent color
    • App mode (Dark/Light)

    Refer to the following Microsoft help topic for more information: Change colors in Windows

    The Win10Palette works with Windows 10 and higher.

    Manage Palette Settings

    When creating a Win10Palette instance, you can use the following constructor parameters to manage palette settings:

    accentColor
    Specifies a palette accent color. If the palette cannot find a Windows accent color, the application accent color is set to #FF0078D7.
    listenAccentColorChanges

    Specifies whether to get or ignore Windows accent color changes.

    If true, the Win10Palette performs the following actions when a user changes an accent color in Windows:

    • Gets a Windows accent color.
    • Creates a theme with the accent color.
    • Applies the theme to an application.

    If false, the Win10Palette ignores Windows accent color changes.

    appMode
    Specifies an app mode. If the palette cannot find a Windows app mode, the application app mode is set to Light.
    listenAppModeChanges

    Specifies whether to get or ignore Windows app mode changes.

    If true, the Win10Palette performs the following actions when a user changes an accent color in Windows:

    • Gets a Windows app mode.
    • Creates a theme that is based on a Dark/Light theme (depends on the selected Windows app mode).
    • Applies the theme to an application.

    If false, the Win10Palette ignores Windows app mode changes.

    Tip

    You can use the Theme.CachePaletteThemes property to cache the current palette theme assembly. The cache reduces load times in future application runs.

    Example

    The code sample below creates a theme with colors based on Windows settings and applies it to an application on startup:

    protected override void OnStartup(StartupEventArgs e) {
        var palette = new Win10Palette(true);
        var theme = Theme.CreateTheme(palette);
        Theme.RegisterTheme(theme);
        ApplicationThemeHelper.ApplicationThemeName = theme.Name;
        base.OnStartup(e);
    }
    

    WPF Themes - Palettes in Ribbon Gallery

    Inheritance

    See Also