private void SetTheme(MessageCommunicatorTheme theme) { switch (theme) { case MessageCommunicatorTheme.Light: this.Styles[0] = (StyleInclude)this.Resources["ThemeLight"]; this.Styles[1] = (StyleInclude)this.Resources["ThemeLightCustom"]; MessageCommunicatorGlobalProperties.Current.CurrentTheme = MessageCommunicatorTheme.Light; MessageBus.Current.SendMessage(new MessageThemeChanged(MessageCommunicatorTheme.Light)); break; case MessageCommunicatorTheme.Dark: this.Styles[0] = (StyleInclude)this.Resources["ThemeDark"]; this.Styles[1] = (StyleInclude)this.Resources["ThemeDarkCustom"]; MessageCommunicatorGlobalProperties.Current.CurrentTheme = MessageCommunicatorTheme.Dark; MessageBus.Current.SendMessage(new MessageThemeChanged(MessageCommunicatorTheme.Dark)); break; default: throw new ArgumentOutOfRangeException(nameof(theme), theme, null); } }
public MessageThemeChanged(MessageCommunicatorTheme newTheme) { this.NewTheme = newTheme; }
public MessageCommunicatorGlobalProperties() { this.CurrentTheme = MessageCommunicatorTheme.Light; }
public MessageOSThemeChangeRequest(MessageCommunicatorTheme newTheme) { this.NewTheme = newTheme; }