在GridView里面添加CheckBox,如何得到被选中这一行的Id
我在GridView里面放了复选框,我想要点中哪一行然后根据这一行的ID去改变某一列的值,但并不知道如何能得到被选中这一行的id...
我在GridView里面放了复选框,我想要点中哪一行然后根据这一行的ID去改变某一列的值,但并不知道如何能得到被选中这一行的id
展开
5个回答
展开全部
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
....
}
}
{
//假设你的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();
}
}
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值
在OnCheckedChanged事件里面用
(sender as CheckBox).NamingContainer as GridViewRow获得当前行,再获取相应控件上绑定的ID值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
设置GridView控件的DataKeyNames=“id”,如果和数据源控件绑定的话,更新的时候GridView控件会自动把名为id的参数传给数据源控件。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
也可以通过下标来找啊 我可以找到子控件内的value或text的值。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询