/// <summary> /// Update the window color /// </summary> /// <param name="sender">the sender</param> /// <param name="e">the selection changed event arguments</param> private void OnWindowColorChanged(object sender, SelectionChangedEventArgs e) { this.ListSelector.SelectionChanged -= this.OnWindowColorChanged; this.ListSelector.LayoutMode = LongListSelectorLayoutMode.List; var selectedItem = (Model.Color) this.ListSelector.SelectedItem; var viewModel = this.DataContext as CaptionSettingsFlyoutViewModel; viewModel.Settings.WindowColor = CaptionSettingsFlyoutViewModel.SetColorType(viewModel.WindowColorType, selectedItem, selectedItem); this.HideListSelector(); }
/// <summary> /// Update the background color /// </summary> /// <param name="sender">the sender</param> /// <param name="e">the selection changed event arguments</param> private void OnBackgroundColorChanged(object sender, SelectionChangedEventArgs e) { var listSelector = sender as ListBox; listSelector.SelectionChanged -= this.OnBackgroundColorChanged; var selectedItem = (Model.Color)listSelector.SelectedItem; var viewModel = this.DataContext as CaptionSettingsFlyoutViewModel; viewModel.Settings.BackgroundColor = CaptionSettingsFlyoutViewModel.SetColorType(viewModel.BackgroundColorType, selectedItem, selectedItem); this.HideListSelector(); }
/// <summary> /// Pick the window color /// </summary> /// <param name="sender">the window color button</param> /// <param name="e">the routed event arguments</param> private void WindowColorButton_Click(object sender, Windows.UI.Xaml.RoutedEventArgs e) { this.PickColor( sender, delegate(Model.Color color) { var viewModel = this.DataContext as CaptionSettingsFlyoutViewModel; this.CaptionSettings.WindowColor = CaptionSettingsFlyoutViewModel.SetColorType(viewModel.WindowColorType, color, new Model.Color { Alpha = 0, Red = 0, Green = 0, Blue = 0 }); }); }
/// <summary> /// Initializes a new instance of the CaptionSettingsControl class. /// </summary> public CaptionSettingsControl() { this.DefaultStyleKey = typeof(CaptionSettingsControl); var viewModel = new CaptionSettingsFlyoutViewModel(); this.DataContext = viewModel; this.CaptionSettings = new CustomCaptionSettings(); viewModel.PropertyChanged += this.OnViewModelPropertyChanged; object value; if (Windows.Storage.ApplicationData.Current.LocalSettings.Values.TryGetValue(OverrideDefaultKey, out value)) { viewModel.IsEnabled = (bool)value; } }
/// <summary> /// Initializes a new instance of the CaptionSettingsControl class. /// </summary> public CaptionSettingsControl() { this.InitializeComponent(); if (DesignMode.DesignModeEnabled) { this.LayoutRoot.Background = new SolidColorBrush(Colors.Black); } var loader = Microsoft.PlayerFramework.CaptionSettings.AssemblyResources.Get(); var viewModel = new CaptionSettingsFlyoutViewModel(); this.DataContext = viewModel; object value; if (Windows.Storage.ApplicationData.Current.LocalSettings.Values.TryGetValue(OverrideDefaultKey, out value)) { viewModel.IsEnabled = (bool)value; } viewModel.PropertyChanged += this.OnViewModelPropertyChanged; }