private async void ColorValuesChanged(UISettings sender, object args) { bool darkTheme = ColorConstants.CurrentThemeIsDark(); await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => { ((Frame)Window.Current.Content).RequestedTheme = darkTheme ? ElementTheme.Dark : ElementTheme.Light; }); }
public SettingsDialog(string initialPage = "General") { InitializeComponent(); RequestedTheme = ColorConstants.CurrentThemeIsDark() ? ElementTheme.Dark : ElementTheme.Light; var version = Package.Current.Id.Version; FooterVersion = string.Format("Version {0}.{1}.{2}", version.Major, version.Minor, version.Build); NavigateFrame(initialPage); }
// ############################################################################################### private void ThemeRadioButtons_Changed(object sender, SelectionChangedEventArgs e) { RadioButtons r = sender as RadioButtons; if (r.SelectedIndex < 0) { return; } var theme = ((ContentControl)r.SelectedItem).Content.ToString(); var parentFrame = (Frame)Window.Current.Content; var parentDialog = (FrameworkElement)((FrameworkElement)((FrameworkElement)this.Parent).Parent).Parent; App._LocalSettings.Set(UserSettings.Theme, theme); var darkTheme = ColorConstants.CurrentThemeIsDark(); parentFrame.RequestedTheme = darkTheme ? ElementTheme.Dark : ElementTheme.Light; parentDialog.RequestedTheme = darkTheme ? ElementTheme.Dark : ElementTheme.Light; }