public void ChangeAnswer() { if (answer != null) { if (question != null) { id = string.Concat(question.Id, ";", answer.Id); } else { id = string.Concat( id.Split(';').FirstOrDefault(), ";", answer.Id ); } ViewModelReplaceWindow replaceWindow = new ViewModelReplaceWindow(); replaceWindow.SendData(answer.Name, ConverQuestionsToList(), id); replaceWindow.OpenWindow(300, 200); } else { ViewModelMessageWindow message = new ViewModelMessageWindow(); message.SendMessage("\n\nNie wybrałeś odpowiedzi!"); message.OpenWindow(300, 200); } }
public ObservableCollection <XML.Question> RemoveQuestion() { if (question != null) { var questionsList = ConverQuestionsToList(); int id = question.Id - 1; questionsList.RemoveAt(id); //update question id for (int i = 0; i < questionsList.Count; i++) { questionsList[i].Id = i + 1; } XML newXmlData = new XML(); newXmlData.QuestionsList = questionsList; XML.Serialize(newXmlData); LoadData(); } else { ViewModelMessageWindow message = new ViewModelMessageWindow(); message.SendMessage("\n\nNie wybrałeś pytania!"); message.OpenWindow(300, 200); } return(questions); }
void Start() { if (QuestionsMax > 0) { if (clickStartAgain) { counter = 0; NextButtonName = "Next"; } clickStartAgain = true; IsEnabledAfterStart = true; IsDisabledAfterStart = false; var allQuestions = new XML().Deserialize().QuestionsList; if (QuestionsMax > allQuestions.Count) { string msg = string.Concat("\n\nNie ma tyle pytań w bazie, ilość pytań w bazie: ", allQuestions.Count, "."); ViewModelMessageWindow message = new ViewModelMessageWindow(); message.SendMessage(msg); message.OpenWindow(300, 200); return; } Random randomQuestions = new Random(); List <XML.Question> mixedQuestions = allQuestions .OrderBy(e => randomQuestions.Next()) .ToList(); questionsForOneTest = mixedQuestions .Take(QuestionsMax) .ToList(); startAgainProperties = new List <object> { QuestionsMax, AutoReplies, questionsForOneTest }; NextQuestion(); Messenger.Default.Send <AutoReplyMessage>(new AutoReplyMessage { Message = AutoReplies }); } else { ViewModelMessageWindow message = new ViewModelMessageWindow(); message.SendMessage("\n\nNiepoprawna ilość pytań!"); message.OpenWindow(300, 200); } }
public void ChangeQuestion() { if (question != null) { id = string.Concat(question.Id, ";", 0); ViewModelReplaceWindow replaceWindow = new ViewModelReplaceWindow(); replaceWindow.SendData(question.Values, ConverQuestionsToList(), id); replaceWindow.OpenWindow(300, 200); } else { ViewModelMessageWindow message = new ViewModelMessageWindow(); message.SendMessage("\n\nNie wybrałeś pytania!"); message.OpenWindow(300, 200); } }
public void GenerateRaport(List <XML.Question> questions) { string report = string.Empty; for (int i = 0; i < questions.Count; i++) { int questionNumber = i + 1; var correctAnswers = questions[i].Items .Where(q => q.IsOk == true && q.Marked == true) .ToArray(); var wrongAnswers = questions[i].Items .Where(q => q.IsOk == false && q.Marked == true) .ToArray(); var allCorrectAnswers = questions[i].Items .Where(q => q.IsOk == true) .ToArray(); report = string.Concat( report, ResultReport( correctAnswers, wrongAnswers, allCorrectAnswers, questionNumber, questions[i]), "\n\n" ); } ViewModelMessageWindow message = new ViewModelMessageWindow(); message.SendMessage(report); message.OpenWindow(500, 500); }
public void GetNewQuestionOrAnswer() { if (!string.IsNullOrEmpty(newQuestionOrAnswer)) { int questionId = int.Parse( idHelper.Split(';').FirstOrDefault() ); int answerId = int.Parse( idHelper.Split(';').LastOrDefault() ); if (!string.IsNullOrEmpty(statement)) { bool isQuestion = false; if (answerId == 0) { isQuestion = true; } Messenger.Default.Send <WindowMessage>(new WindowMessage { Message = newQuestionOrAnswer, AnswerId = answerId, QuestionId = questionId, IsQuestion = isQuestion }); } } else { ViewModelMessageWindow message = new ViewModelMessageWindow(); message.SendMessage("\n\nNie napisałeś nowej odpowiedzi!"); message.OpenWindow(300, 200); } }
public void AddQuestion( string question, string answer1, bool answer1IsTrue, string answer2, bool answer2IsTrue, string answer3, bool answer3IsTrue, string answer4, bool answer4IsTrue) { List <Answer> answers = new List <Answer>(); XML questions = new XML().Deserialize(); bool questionExistInDB = questions.QuestionsList.Any(q => q.Values == question); if (questionExistInDB) { ViewModelMessageWindow messageWindow = new ViewModelMessageWindow(); messageWindow.SendMessage("\n\nTakie pytanie już istenieje!"); messageWindow.OpenWindow(300, 200); return; } Answer answerFirst = new Answer { Id = 1, IsOk = answer1IsTrue, Name = answer1 }; Answer answerSecond = new Answer { Id = 2, IsOk = answer2IsTrue, Name = answer2 }; Answer answerThird = new Answer { Id = 3, IsOk = answer3IsTrue, Name = answer3 }; Answer answerFourth = new Answer { Id = 4, IsOk = answer4IsTrue, Name = answer4 }; answers.Add(answerFirst); answers.Add(answerSecond); answers.Add(answerThird); answers.Add(answerFourth); questions.QuestionsList.Add( new XML.Question() { Id = questions.QuestionsList.Count + 1, Values = question, Items = answers }); XML.Serialize(questions); Messenger.Default.Send <RefreshQuestions>(new RefreshQuestions { Refresh = true }); ViewModelMessageWindow message = new ViewModelMessageWindow(); message.SendMessage("\n\nPytanie zostało dodane."); message.OpenWindow(300, 200); }