private void Button1_Click(object sender, System.EventArgs e)
{
SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["connectionString"]); 
conn.Open();
SqlCommand cmd;
int i;
for (i= 0; i< DataGrid1.Items.Count; i++)
{
CheckBox cb1=(CheckBox)DataGrid1.Items[i].FindControl("CheckBox1"); 
if (cb1.Checked == true)
{
string strCommand = "DELETE from qydt where q_id='" + DataGrid1.Items[i].Cells[1].Text + "'";
cmd = new SqlCommand(strCommand, conn);
cmd.ExecuteNonQuery();
}
}
conn.Close();
 mmm();

}
=====================================
我想问下,这个代码if (cb1.Checked == true)这个怎么不起作用,代码如何写为好?

解决方案 »

  1.   

    后台能这么用吗?直接用个bool型的变量不就行了吗?
      

  2.   

    Items[i]这里好象有问题,指明下行和列看看
      

  3.   

    你那么写有问题
    foreach(DataGridItem di in DataGrid1.Items )
    {  
    CheckBox cb=(CheckBox)di.FindControl("cbselect");
    if(cb.Checked)
    {

                                                  ....
                                                   }
    }