foreach(GridViewRow rowview in GridView1.Rows) //遍历Gridview中的每一行
{
//假设你的gridview中的复选框放在第一列,id是“CheckBox1”
CheckBox check = (CheckBox)rowview.Cells[0].FindControl("CheckBox1");//找到了checkbox控件
if(check.Checked)//如果被选中
{
...
//假设你把每一行的id放在第二列
string myid = rowview.Cells[1].text;//这就是所在行的id,赋值给了myid
....
}
}
1.设置GridView的DataKeyNames="id"
2.在事件里写
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox cb = (CheckBox)(GridView1.Rows[i].FindControl("你的checkbox id"));
string id = GridView1.DataKeys[i]["id"].ToString();
if (cb.Checked)
{
string id = GridView1.DataKeys[i]["id"].ToString();
}
}
给复选框添加AutoPostBack="true"和OnCheckedChanged事件
在OnCheckedChanged事件里面用
(sender as CheckBox).NamingContainer as GridViewRow获得当前行,再获取相应控件上绑定的ID值
设置GridView控件的DataKeyNames=“id”,如果和数据源控件绑定的话,更新的时候GridView控件会自动把名为id的参数传给数据源控件。
也可以通过下标来找啊 我可以找到子控件内的value或text的值。