private void buttonAddAnswer_Click(object sender, EventArgs e) { ClassTotal.temp_interval++; switch (ClassTotal.type) { case "Одиночный выбор": ClassTotal.RadioButtonDynamic(splitContainer3.Panel1, 3, 120 + (ClassTotal.temp_interval * 40), 17, 20); ClassTotal.TextBoxDynamic(splitContainer3.Panel1, 25, 120 + (ClassTotal.temp_interval * 40), 637, 20); break; case "Множественный выбор": ClassTotal.CheckBoxDynamic(splitContainer3.Panel1, 3, 120 + (ClassTotal.temp_interval * 40), 17, 20); ClassTotal.TextBoxDynamic(splitContainer3.Panel1, 25, 120 + (ClassTotal.temp_interval * 40), 637, 20); break; case "Ввод слова": ClassTotal.TextBoxDynamic(splitContainer3.Panel1, 3, 3 + (ClassTotal.temp_interval * 40), 330, 20); break; case "На соответствие": ClassTotal.TextBoxDynamic(splitContainer3.Panel1, 17, 120 + (ClassTotal.temp_interval * 40), 300, 20); ClassTotal.TextBoxDynamic(splitContainer3.Panel1, 348, 120 + (ClassTotal.temp_interval * 40), 300, 20); break; } }
private void buttonOK_Click(object sender, EventArgs e) { if (temp == true) { newTest newTest = new newTest(); ClassTotal.temp_interval = 0; m_parent.splitContainer3.Panel1.Controls.Clear(); m_parent.textBoxQuestion.Text = ""; m_parent.buttonAddAnswer.Visible = true; m_parent.buttonSaveQuestion.Visible = true; m_parent.buttonСancelQuestion.Visible = true; switch (ClassTotal.type) { case "Одиночный выбор": for (int i = 0; i < 4; i++) { ClassTotal.RadioButtonDynamic(m_parent.splitContainer3.Panel1, 3, 3 + (i * 40), 17, 20); ClassTotal.TextBoxDynamic(m_parent.splitContainer3.Panel1, 25, 3 + (i * 40), 637, 30); } break; case "Множественный выбор": //m_parent.splitContainer3.Panel1.Controls.Clear(); for (int i = 0; i < 4; i++) { ClassTotal.CheckBoxDynamic(m_parent.splitContainer3.Panel1, 3, 3 + (i * 40), 17, 30); ClassTotal.TextBoxDynamic(m_parent.splitContainer3.Panel1, 25, 3 + (i * 40), 637, 30); } break; case "Ввод слова": ClassTotal.TextBoxDynamic(m_parent.splitContainer3.Panel1, 3, 3, 330, 30); m_parent.buttonAddAnswer.Visible = false; break; case "Ввод значения": ClassTotal.TextBoxDynamic(m_parent.splitContainer3.Panel1, 3, 3, 330, 30); m_parent.buttonAddAnswer.Visible = false; break; case "На соответствие": for (int i = 0; i < 4; i++) { ClassTotal.TextBoxDynamic(m_parent.splitContainer3.Panel1, 17, 3 + (i * 40), 300, 30); ClassTotal.TextBoxDynamic(m_parent.splitContainer3.Panel1, 348, 3 + (i * 40), 300, 30); } break; } this.Close(); } }
private void Show_Question() { ClassQuestion question = listQuestion[currentNumber - 1]; //Объект-текущий вопрос теста this.textBoxTextQ.Text = question.textQuestion; //Получение информации о вопросе typeQuestion = question.typeQuestion; //Тип вопроса answers = question.answers; answerMas = answers.Split(';'); //Деление ответов на части countAnswers = answerMas.Length - 1; //Количество ответов splitContainer2.Panel2.Controls.Clear(); //Готовим панель для динамических компонентов trueAnswer = ""; //Строка правильных ответов //Отображаем динамические компоненты в зависимости от типа вопроса switch (typeQuestion) { case "Одиночный выбор": for (int i = 0; i < countAnswers; i++) { trueAnswer += answerMas[i][0]; //Первый символ в ответе хранит правильность: + или – //Динамические компоненты ответа зависят от типа вопроса ClassTotal.RadioButtonDynamic(splitContainer2.Panel2, 20, zazorTop + i * comHieght + i * zazor, 30, comHieght); ClassTotal.LabelDynamic(splitContainer2.Panel2, 60, zazorTop + i * comHieght + i * zazor, splitContainer2.Panel2.Width - 70, comHieght, answerMas[i].Remove(0, 1)); } break; case "Множественный выбор": for (int i = 0; i < countAnswers; i++) { trueAnswer += answerMas[i][0]; ClassTotal.CheckBoxDynamic(splitContainer2.Panel2, 3, 3 + (i * 40), 17, 20); ClassTotal.LabelDynamic(splitContainer2.Panel2, 25, 3 + (i * 40), 637, 20, answerMas[i].Remove(0, 1)); } break; case "Ввод значения": trueAnswer = answerMas[0]; ClassTotal.TextBoxDynamic(splitContainer2.Panel2, 3, 3, 330, 30); break; case "Ввод слова": for (int i = 0; i < countAnswers; i++) { trueAnswer += answerMas[i]; ClassTotal.TextBoxDynamic(splitContainer2.Panel2, 3, 3 + (i * 40), 330, 30); } break; case "На соответствие": string[] first = new string[countAnswers]; string[] second = new string[countAnswers]; for (int i = 0; i < countAnswers; i++) { string[] an = answerMas[i].Split('&'); first[i] = an[0]; second[i] = an[1]; } for (int i = 0; i < countAnswers; i++) { trueAnswer += second[i]; ClassTotal.LabelDynamic(splitContainer2.Panel2, 17, 3 + (i * 40), 300, 20, first[i]); ClassTotal.ComboBoxDynamic(splitContainer2.Panel2, 348, 3 + (i * 40), 300, 20, second); } break; } }