using Microsoft.Win32; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Telerik.WinControls; namespace PJ64Savestater { internal static class VisualThemeHelper { private const string THEMENAME_FLUENT = "Fluent"; private const string THEMENAME_FLUENTDARK = "FluentDark"; public static void SetVisualTheme() { RadThemeComponentBase? setTheme = null; var curVers = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion", false); if (Convert.ToString(curVers?.GetValue("ProductName", "-"))?.StartsWith("Windows 1") ?? false) { var keyPersonalize = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Themes\Personalize", false); int useapptheme = Convert.ToInt32(keyPersonalize?.GetValue("AppsUseLightTheme", 1)); switch (useapptheme) { case 0: setTheme = new Telerik.WinControls.Themes.FluentDarkTheme(); break; case 1: setTheme = new Telerik.WinControls.Themes.FluentTheme(); break; } } if (setTheme is null) setTheme = new Telerik.WinControls.Themes.FluentTheme(); // Set theme ThemeResolutionService.ApplicationThemeName = setTheme.ThemeName; } } }