从表中选择数据并将其显示在带有复选框的标签中

时间:2012-03-19 09:12:11

标签: c# asp.net

我从表中检索了我的数据并将其放入标签中。现在我想为每一行生成一个复选框。我怎样才能做到这一点?所以..

                          option1..checkbox1
                          option2..checkbox2....

这是我获取数据的代码:

SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["erp"].ConnectionString);
            con.Open();
            string intero = "Select * from judete";
            SqlCommand cmd = new SqlCommand(intero, con);

            SqlDataReader rdr;

            rdr = cmd.ExecuteReader();

            while (rdr.Read())
            {


                Label1.Text +=rdr[0] + "" + rdr[1] + "<br/>";
            }

            rdr.Close();
            con.Close(); 

我在asp.net Web应用程序中使用C#

3 个答案:

答案 0 :(得分:1)

首先将Panel Control添加到您的页面。这是必须的,然后使用此代码

while (rdr.Read())
{
    Label1.Text +=rdr[0] + "" + rdr[1] + "<br/>";
    CheckBox cb= new CheckBox();
    cb.Visible=true;
    cb.Width=300;
    cb.Text=rdr[1].ToString();
    Panel1.Controls.Add(cb);        
} 

希望这可行。

答案 1 :(得分:1)

回答第二个问题 在之前的代码中添加此代码

cb.CheckedChanged += new EventHandler(cb_CheckedChanged);

然后创建一个像这样的新方法

void cb_CheckedChanged(object sender, EventArgs e)
{
    //Do Something 
}

答案 2 :(得分:0)

您可以使用CheckBoxList控件。

    SqlDataReader rdr;

    rdr = cmd.ExecuteReader();

    CheckBoxList1.DataSource = rdr;
    CheckBoxList1.DataBind();


<asp:CheckBoxList runat="server" ID="CheckBoxList1" 
           DataTextField=".. column to display.." 
           DataValueField="... column to use for values .." />