在回发

时间:2016-09-19 14:46:54

标签: c# asp.net

我正在创建一个应用程序,从数据库中提取不同类型的调查问题。 我实施的第一种是一系列问题,每个问题都有四个单选按钮可供选择。

我创建单选按钮列表并动态标记的代码是

  protected void ProcessData(DataTable question, DataTable answers)
    {


        int i = 0;
        foreach (DataRow row in question.Rows)
        {
            HtmlGenericControl rowDiv = new HtmlGenericControl("div");
            rowDiv.Attributes["class"] = "classRowDiv";
            panel1.Controls.Add(rowDiv);

            HtmlGenericControl questionDiv = new HtmlGenericControl("div");
            questionDiv.Attributes["class"] = "classQuestionDiv";
            questionDiv.ID = "questionDiv" + i.ToString();
            rowDiv.Controls.Add(questionDiv);

            Label questionLabel = new Label();
            questionLabel.Attributes["class"] = "classQuestionLabelDiv";
            if (row[2].ToString() == "Radio button")
            {
                questionLabel.Text = row[3].ToString();

                rowDiv.Controls.Add(questionLabel);


                HtmlGenericControl radioDiv = new HtmlGenericControl("div");
                radioDiv.Attributes["class"] = "classRadioDiv";
                radioDiv.ID = "radioDiv" + i.ToString();
                rowDiv.Controls.Add(radioDiv);

                RadioButtonList rbl = new RadioButtonList();


                rbl.ID = "List" + i.ToString();
                radioDiv.Controls.Add(rbl);
                rbl.RepeatDirection = RepeatDirection.Horizontal;

                Label lbl = new Label();
                lbl.Text = "<hr />";
                panel1.Controls.Add(lbl);


                DataRow rowA;
                for (int j = 0; j < 4; j++ )
                {
                    rowA = answers.Rows[j];
                    ListItem button = new ListItem(rowA[2].ToString(), j.ToString());

                    button.Attributes["class"] = "radioStyle";
                    rbl.Items.Add(button);

                }


                i++;
            }

        }


    }

我遇到的问题实际上是获取按钮的选定值。我从阅读中了解到,在回发后必须使用相同的ID重新加载动态创建的控件,但我不完全理解如何实现这一点,因为创建的单选按钮的数量取决于数据库的结果集

0 个答案:

没有答案