怎么遍历并获取GridView中checkBox是否选中以及该项的id???
在gridview表中我添加了复选框
<asp:TemplateField HeaderText="全选">
<HeaderTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" AutoPostBack="True"
oncheckedchanged="CheckBox1_CheckedChanged" Text=" " />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="ck" runat="server" oncheckedchanged="ck_CheckedChanged" />
</ItemTemplate>
</asp:TemplateField>
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)现在我想获得选中项的id值,并根据此ID值,在弹出层中显示详细信息??请问如何实现着个过程
{
CheckBox all = (CheckBox)sender;
foreach (GridViewRow g in GridView1.Rows)
{
CheckBox ck = (CheckBox)g.FindControl("ck");
ck.Checked = all.Checked;
}
}
protected void ck_CheckedChanged(object sender, EventArgs e)
{
}
[解决办法]
gridview.Rows[index].Cells[index].FindControl("checkbox1");
[解决办法]
Refer this:
http://www.cnblogs.com/insus/archive/2011/11/07/2238927.html
[解决办法]
List<long> shopperIDList = new List<long>();
foreach (GridViewRow gvr in this.gvMember.Rows)
{
if (((CheckBox)gvr.FindControl("CheckBox1")).Checked) shopperIDList.Add(Convert.ToInt64(this.gvMember.DataKeys[gvr.RowIndex].Value));
}
// 请注意这个属性 gvMember.DataKeys 你可以在工具的属性栏目中找到它,代表着自定义主键集合,可以多个,用英文输入法状态时的逗号隔开,只有一个字段时,直接用this.gvMember.DataKeys[gvr.RowIndex].Value就可以取得了,如果有多个字段,则使用this.gvMember.DataKeys[gvr.RowIndex].Values[index]来获取,其中index是索引号,从0开始,0则代表第一个字段,1代表第二个,以此类推, 还有注意的是它返回的值都是object类型的,你要自己转换