刚接触asp.net,在Gridview中添加一列checkbox...........

想问下,我想通过勾选checkbox,将选中的行进行统一操作,请问具体要怎么写。求个示例代码,刚接触不是很懂,还望讲解的详细点。追分... 想问下,我想通过勾选checkbox,将选中的行进行统一操作,请问具体要怎么写。求个示例代码,刚接触不是很懂,还望讲解的详细点。追分 展开
 我来答
v雪地里的猫
2015-03-18 · TA获得超过864个赞
知道小有建树答主
回答量:401
采纳率:100%
帮助的人:242万
展开全部

这个需要将checkbox添加到GridView的模板列中,然后用下面代码:

for (int i = 0; i < GridView1.Rows.Count; i++)
{
    CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
    if (cbox.Checked == true)
    {
        //要做的事
    }
}

上面从i就能知道是第几行,如果要获取表中id,还需要模板列中隐藏id,才好获取。

追问

问下,像这样子这个:我最右边有个【启用】的按钮,我想勾选前面复选框,然后点击【启用】按钮,使得表中“状态”的字段显示为启用,怎么搞。。。求一段详细代码,谢谢了

追答

GridView第一列使用模板列,然后拖一个checkbox和hiddenfield控件上去,生成的代码应该是这样的:

<asp:TemplateField HeaderText="选择">
    <ItemTemplate>
        <asp:CheckBox ID="CheckBox1" runat="server" />
        <asp:HiddenField ID="HiddenField1" runat="server" Value='<%#Eval("产品编号") %>' />
    </ItemTemplate>
</asp:TemplateField>

启用按钮的代码:

for (int i = 0; i < GridView1.Rows.Count ; i++)
{
    CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
    if (cbox.Checked == true)
    {
        HiddenField hid = (HiddenField)GridView1.Rows[i].FindControl("HiddenField1");
        string no = hid.Value;
        //设置当前no的状态为启用
    }
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式