public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { BloodcatDownloadOption option = value as BloodcatDownloadOption; if (parameter == null || option == null) { return(false); } switch (parameter as string) { case "NoTouch": return(option.Background == BloodcatWallpaperOption.NoTouch); case "SolidColor": return(option.Background == BloodcatWallpaperOption.SolidColor); case "RemoveBackground": return(option.Background == BloodcatWallpaperOption.RemoveBackground); case "ColorBrush": return(new SolidColorBrush(option.BackgroundColor)); case "RemoveSkin": return(option.RemoveSkin); case "RemoveVideoAndStoryboard": return(option.RemoveVideoAndStoryboard); } throw new Exception("Not expected download option."); }
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { BloodcatDownloadOption option = new BloodcatDownloadOption(); var window = MainWindow.InUseWindow; if (window.NoTouch.IsChecked ?? false) { } else if (window.SolidColor.IsChecked ?? false) { var brush = window.ColorBrush.Fill as SolidColorBrush; option.BackgroundColor = brush.Color; } else if (window.RemoveBackground.IsChecked ?? false) { option.Background = BloodcatWallpaperOption.RemoveBackground; } option.RemoveVideoAndStoryboard = window.RemoveVideoAndStoryboard.IsChecked ?? false; option.RemoveSkin = window.RemoveSkin.IsChecked ?? false; switch (parameter as string) { case "NoTouch": option.Background = BloodcatWallpaperOption.NoTouch; break; case "SolidColor": option.Background = BloodcatWallpaperOption.SolidColor; break; case "RemoveBackground": option.Background = BloodcatWallpaperOption.RemoveBackground; break; case "RemoveSkin": option.RemoveSkin = (bool)value; break; case "RemoveVideoAndStoryboard": option.RemoveVideoAndStoryboard = (bool)value; break; } return(option); }