public object Convert(IList <object> values, Type targetType, object parameter, CultureInfo culture) { bool partialBarSelected = false; if (values != null && values.Count == 2 && values[0] is QUIZPART && values[1] is QUIZPARTIAL) { if (Enum.IsDefined(typeof(QUIZPART), values[0]) && Enum.IsDefined(typeof(QUIZPARTIAL), values[1])) { QUIZPART selectedQuizPart = (QUIZPART)values[0]; QUIZPARTIAL selectedQuizPartial = (QUIZPARTIAL)values[1]; QUIZPARTIAL currentPartialBar = (QUIZPARTIAL)parameter; if (selectedQuizPart == QUIZPART.Entire) { partialBarSelected = true; } else if (selectedQuizPart == QUIZPART.Half) { partialBarSelected = ((int)currentPartialBar <= 3) ? true : false; if (selectedQuizPartial == QUIZPARTIAL.Second) // If second half... { partialBarSelected = !partialBarSelected; } } else if (selectedQuizPart == QUIZPART.Third) { int currentPartialBarNumber = (int)currentPartialBar; if (selectedQuizPartial == QUIZPARTIAL.First && currentPartialBarNumber <= 2) { partialBarSelected = true; } else if (selectedQuizPartial == QUIZPARTIAL.Second && currentPartialBarNumber <= 4 && currentPartialBarNumber > 2) { partialBarSelected = true; } else if (selectedQuizPartial == QUIZPARTIAL.Third && currentPartialBarNumber > 4) { partialBarSelected = true; } } else { // 1/6 quiz division partialBarSelected = currentPartialBar == selectedQuizPartial ? true : false; } } } if (partialBarSelected) { return(new SolidColorBrush(Color.FromRgb(7, 142, 255))); } else { return(new SolidColorBrush(Color.FromRgb(155, 210, 255))); } }
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { bool visibility = false; if (value != null && value is QUIZPART) { QUIZPART quizPart = (QUIZPART)value; QUIZPARTIAL quizPartial = (QUIZPARTIAL)parameter; if (quizPart == QUIZPART.Entire) { visibility = false; } else if (quizPart == QUIZPART.Sixth) { visibility = true; } else { if (quizPartial == QUIZPARTIAL.First || quizPartial == QUIZPARTIAL.Second) { visibility = true; } else if (quizPartial == QUIZPARTIAL.Third && quizPart == QUIZPART.Third) { visibility = true; } else { visibility = false; } } } return(visibility); }