asp.net 웹 양식 응용 프로그램에서 SQL 데이터베이스에서 최대 2 개의 질문 및 최대 3 답변 (각 질문에 대한) 임의의 집합을 당기는. 각 질문에 대해 일련의 답변을 보유 할 RadioButtonList 컨트롤을 동적으로 만듭니다.asp.net 동적 컨트롤 값을
포스트 백이 발생하면 각 RadioButtonList의 값을 읽어야합니다. 응답이 잘못되고 답변이 맞으면 사용자가 새 페이지로 리디렉션되는 경우 새 (다른) 일련의 질문과 답변이 만들어지기 때문에 컨트롤 자체를 선택된 인덱스/값으로 유지할 필요가 없습니다.
포스트 백 동안 Page_init 이벤트에서 컨트롤을 다시 만들려고했으나 동적 컨트롤이 임의의 데이터 집합을 기반으로 만들어 졌기 때문에 매번 다를 것입니다. 를 Page_Load에
동적 컨트롤 생성 :
foreach (DataRow question in dt_questions.Rows)
{
questionCounter++;
RadioButtonList RBL_Answers = new RadioButtonList();
RBL_Answers.ID = "RBL_Answers_" + questionCounter;
// fill radio list with answers to pick from
foreach (DataRow answer in dt_answers.Rows)
{
ListItem item = new ListItem(answer["IA_Text"].ToString(), answer["IA_Correct"].ToString());
RBL_Answers.Items.Add(item);
}
Panel_ContentQA.Controls.Add(RBL_Answers);
}