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)));
            }
        }
Example #2
0
        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);
        }