private void UpdateScreen()
        {
            if (QuizInfo.CurrentQuestionIndex < QuizInfo.QuizQuestions.Count)
            {
                ProfileQuizQuestion question = QuizInfo.QuizQuestions[QuizInfo.CurrentQuestionIndex];

                uxQuestion.Text = question.Question;
                uxAnswer.Text = string.Empty;

                Session.Add("GAMEINFO", QuizInfo);

                String bar = "<div class=\"bar\" style=\"width: {0}%;\"></div>";
                uxQuestionBegin.Text = (QuizInfo.CurrentQuestionIndex + 1).ToString();
                uxQuestionCount.Text = QuizInfo.QuizQuestions.Count.ToString();
                uxBar.Text = string.Format(bar, (((decimal)(QuizInfo.CurrentQuestionIndex + 1)) / (decimal)QuizInfo.QuizQuestions.Count) * 100);

            }
            else          // Game is over.  Tally Results and show user.
            {
                DateTime finishTime = DateTime.Now;
                int correctScore = 0;
                foreach (ProfileQuizQuestion question in QuizInfo.QuizQuestions)
                {
                    if (question.Answer.Trim().Equals(question.UserAnswer.Trim(), StringComparison.CurrentCultureIgnoreCase))
                        correctScore++;
                }
                TimeSpan elapsedTime = finishTime - QuizInfo.StartTime;
                decimal seconds = ((decimal)elapsedTime.TotalMilliseconds / 1000);

                GamesWS.GamesService gamesService = new GamesService();
                gamesService.InsertGameResultWeb(User.Identity.Name, GameListEnum.UserProfileQuestions, correctScore, seconds, QuizInfo.QuizQuestions.Count);

                String queryString = string.Format("Correct={0}&Total={1}&Seconds={2}", Server.HtmlEncode(correctScore.ToString()), Server.HtmlEncode(QuizInfo.QuizQuestions.Count.ToString()),
                                            Server.HtmlEncode(seconds.ToString()));
                Response.Redirect("GameResults.aspx?" + queryString);
            }
        }
        protected void uxNextQuestion_Click(object sender, EventArgs e)
        {
            if (uxAnswers.SelectedIndex > -1)
            {
                String answer = uxAnswers.SelectedItem.Text;
                QuestionList[QuestionNumber.Value].UserAnswer = answer;
            }

            QuestionNumber = QuestionNumber + 1;

            if (QuestionNumber.Value >= QuestionList.Count)
            {
                DateTime finishTime = DateTime.Now;
                int correctScore = 0;
                foreach (IdentifyQuestion question in QuestionList)
                {
                    if (question.Object.Equals(question.UserAnswer, StringComparison.CurrentCultureIgnoreCase))
                        correctScore++;
                }
                DateTime startTime = (DateTime)Session["BeginTime"];
                TimeSpan elapsedTime = finishTime - startTime;
                decimal seconds = ((decimal)elapsedTime.TotalMilliseconds / 1000);

                GamesWS.GamesService gamesService = new GamesService();
                gamesService.InsertGameResultWeb(User.Identity.Name, GameListEnum.Identify, correctScore, seconds, QuestionList.Count);

                String queryString = string.Format("Correct={0}&Total={1}&Seconds={2}", Server.HtmlEncode(correctScore.ToString()), Server.HtmlEncode(QuestionList.Count().ToString()),
                                            Server.HtmlEncode(seconds.ToString()));
                Response.Redirect("GameResults.aspx?" + queryString);
            }
            else
            {
                SetupUI();
            }
        }
        private void UpdateScreen()
        {
            if (ColorGameInfo.CurrentQuestionIndex < ColorGameInfo.QuestionList.Count())
            {
                ColorGameQuestion question = ColorGameInfo.QuestionList[ColorGameInfo.CurrentQuestionIndex];
                //uxLeftScreen.Text = "";
                uxLeftScreen.Text = question.LeftWord;
                uxLeftScreen.ForeColor = System.Drawing.Color.FromName(question.LeftColor);
                uxRightScreen.Text = question.RightWord;
                uxRightScreen.ForeColor = System.Drawing.Color.FromName(question.RightColor);

                Session.Add("COLORGAMEINFO", ColorGameInfo);
            }
            else          // Game is over.  Tally Results and show user.
            {
                DateTime finishTime = DateTime.Now;
                int correctScore = 0;
                foreach (ColorGameQuestion question in ColorGameInfo.QuestionList)
                {
                    if (question.UserCorrect)
                        correctScore++;
                }
                TimeSpan elapsedTime = finishTime - ColorGameInfo.StartTime;
                decimal seconds = ((decimal)elapsedTime.TotalMilliseconds / 1000);

                GamesWS.GamesService gamesService = new GamesService();
                gamesService.InsertGameResultWeb(User.Identity.Name, GameListEnum.ColorQuiz, correctScore, seconds, ColorGameInfo.QuestionList.Count());

                String queryString = string.Format("Correct={0}&Total={1}&Seconds={2}", Server.HtmlEncode(correctScore.ToString()), Server.HtmlEncode(ColorGameInfo.QuestionList.Count().ToString()),
                                            Server.HtmlEncode(seconds.ToString()));
                Response.Redirect("ColorGameResults.aspx?" + queryString);
            }
        }
        protected void uxNextQuestion_Click(object sender, EventArgs e)
        {
            if (uxAnswers.SelectedIndex > -1)
            {
                String answer = uxAnswers.SelectedItem.Text;
                ShortTermAnswer foundAnswer = Quiz.QuestionList[QuestionNumber.Value].AnswerList.ToList().Find(delegate(ShortTermAnswer findAnswer)
                {
                    return findAnswer.Answer == answer;
                });
                if (foundAnswer.IsCorrect)
                    Quiz.QuestionList[QuestionNumber.Value].UserCorrect = true;
            }

            QuestionNumber = QuestionNumber + 1;

            if (QuestionNumber.Value >= Quiz.QuestionList.Count())
            {
                DateTime finishTime = DateTime.Now;
                int correctScore = 0;
                foreach (ShortTermQuestion question in Quiz.QuestionList)
                {
                    if (question.UserCorrect)
                        correctScore++;
                }
                DateTime startTime = (DateTime)Session["BeginTime"];
                TimeSpan elapsedTime = finishTime - startTime;
                decimal seconds = ((decimal)elapsedTime.TotalMilliseconds / 1000);

                GamesWS.GamesService gamesService = new GamesService();
                gamesService.InsertGameResultWeb(User.Identity.Name, GameListEnum.UserProfileQuestions, correctScore, seconds, Quiz.QuestionList.Count());

                String queryString = string.Format("Correct={0}&Total={1}&Seconds={2}", Server.HtmlEncode(correctScore.ToString()), Server.HtmlEncode(Quiz.QuestionList.Count().ToString()),
                                            Server.HtmlEncode(seconds.ToString()));
                Response.Redirect("GameResults.aspx?" + queryString);
            }
            else
            {
                SetupUI();
            }
        }