GridView中如何通过Checkbox(模板列)取值?

解决方案 »

  1.   

    for (int i = 0; i < GridView1.Rows.Count; i++) 
            { 
                CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1"); 
                if (cbox.Checked == true) 
                { 
                    string sqlstr = "delete from " + table_name + " where study_=" + "'" + GridView1.Rows[i].Cells[2].Text.ToString() + "'";//删除选定的信息第三列 
                    //OleDbDataAdapter da = new OleDbDataAdapter(sqlstr, conn);//这些作参考 
                    //OleDbCommandBuilder cmd = new OleDbCommandBuilder(da); 
                    //DataSet ds = new DataSet(); 
                    //da.Fill(ds, table_name); 
                } 
            }
      

  2.   

    gridview中的 Checkbox 让其绑定值。然后可以通过 request.form[""]来获得,需要的是checkbox的value值,,这样可以获得。如果需要具体的值可以用string 的spilt来进行分离逗号,这样感觉挺简单的。
      

  3.   


                        string IDS = "";
                        foreach (GridViewRow gv in GridView1.Rows)
                        {
                            CheckBox cb = (CheckBox)gv.FindControl("CheckBox1");
                            if (cb.Checked)
                            {
                                int index = gv.RowIndex;
                                DataKey key = this.GridView1.DataKeys[index];//获取主键
                                    Int ID = Convert.ToInt32(key.Values["ID"]);
                                IDS += ID.ToString() + ",";
                            }
                        }
      

  4.   

    在GridView的摸版列中用HTML控件  CheckBoxLIST  属性 NAME=“CheckBox1” VALUE=“绑定ID”
       然后在后台获取  
        CheckBoxLIST CK;
       string aa="";
       foreach (GridViewRow gv in GridView1.Rows)
          {
            CK=gv.gv.FindControl("CheckBox1")asCheckBoxLIST ;
               if(ck.Rows[0].selected==true)
                  {
                   string asd=ck.datavalueFiled;
                    aa+=asd+",";
                 }
            }
     获取到你所有选中的ID