GridView里面嵌套RadioButton

简介: 很多时候需要在GridView里面嵌套一些其它的控件,比如说单选按钮,复选按钮,文本框等等,这个事儿也不难,以前做过很多次也没遇见什么问题,但是最近却遇到了一件令我非常苦恼的事情,我在GridView里面嵌套了一个RadioButton,我的目的是想让用户选择一个对象对其操作,起初是这个RadioB...

很多时候需要在GridView里面嵌套一些其它的控件,比如说单选按钮,复选按钮,文本框等等,这个事儿也不难,以前做过很多次也没遇见什么问题,但是最近却遇到了一件令我非常苦恼的事情,我在GridView里面嵌套了一个RadioButton,我的目的是想让用户选择一个对象对其操作,起初是这个RadioButton无法单选,给它指定了GroupName之后也是一样的问题,后来这个解决了,代码如下:

protected void rdbCheck_CheckedChanged(object sender, EventArgs e)
    {
        for (int i = 0; i < this.dgvUserGrouopList.Rows.Count; i++)
        {
            ((RadioButton)this.dgvUserGrouopList.Rows[i].FindControl("rdbCheck")).Checked = false;

        }
        ((RadioButton)sender).Checked = true;


        //foreach (GridViewRow row in this.dgvUserGrouopList.Rows)
        //{
        //    if (row.RowType == DataControlRowType.DataRow)
        //    {
        //        RadioButton rb = (RadioButton)row.FindControl("rdbCheck");
        //        rb.Checked = false;
        //    }
        //}

        //RadioButton btn = sender as RadioButton;
        //btn.Checked = true;

        //foreach (GridViewRow row in this.dgvUserGrouopList.Rows)
        //{
        //    if (row.RowType == DataControlRowType.DataRow)
        //    {
        //        RadioButton rb = (RadioButton)row.FindControl("rdbCheck");

        //        if (rb.Checked)
        //        {
        //            SelectGrouopID = row.Cells[3].Text.Trim();//给全局变量赋值
        //        }
        //    }
        //}        
    }


以上两种方法都可以达到效果,但是第一种明显要简洁一些,单选没问题了,随之而来的便是不管怎么样都无法获取GridView上面的数据,如下图:

选中数据之后,点击“修改”按钮,进入代码里面:

可以看到,获取不到GridView上面的数据了,我以为是RadioButton的问题,所以换成了CheckBox,可以搞了半天一样的问题,后来我看了看前台的代码,发现有个问题,不知道当时为什么给GridView绑定字段的时候都是使用的TemplateFeld,并不是BoundField,会不会是这个原因呢?于是将TemplateFeld换成了BoundField,果然,问题得到解决,如下图:

图片中那几个“增加”,“删除”,“修改”,“保存”按钮的图片是在FrankTang的博客中截图的,当时觉得这几个图片挺实用的,就截图保存了下来,在此表示感谢。

http://www.cnblogs.com/FrankTang/archive/2012/10/30/2746081.html

相关文章
|
Linux
七个办法只有一个有效:200 PORT command successful. Consider using PASV.425 Failed to establish connection.
七个办法只有一个有效:200 PORT command successful. Consider using PASV.425 Failed to establish connection.
4222 0
七个办法只有一个有效:200 PORT command successful. Consider using PASV.425 Failed to establish connection.
|
人工智能 自然语言处理 算法
阿里云智能客服知识运营白皮书
        阿里云智能客服知识运营白皮书的撰写,是协调包括算法工程师、开发工程师、产品设计师、AIT 人工智能训练师人员等多角色,将技术理论基础和实际实践经验进行结合,形成业内首部智能客服知识运营白皮书。白皮书以阿里云智能客服系统为应用标的,面向智能客服中的知识定义、知识应用、知识梳理方法三大环节进行描述和说明,希望为智能客服领域的知识应用提供具备指导性意义的方法论。一直以来,智能客服领域的知
753 1
阿里云智能客服知识运营白皮书
|
XML 移动开发 小程序
抖音小程序开发 唤起收银台支付(可以选择支付宝APP支付或微信H5支付)
字节跳动也开放了小程序给商家接入,可以在旗下APP如抖音、今日头条、今日头条极速版等应用中即点即用,基于庞大的数亿用户量为其引流,帮助商家获取用户流量,销售商品,其模式和微信小程序差不多。
2163 0
抖音小程序开发 唤起收银台支付(可以选择支付宝APP支付或微信H5支付)
|
9月前
|
弹性计算 运维 Java
OS-Copilot参数功能全面测试报告
作为一名运维工程师,我主要负责云资源的运维和管理。通过使用OS Copilot的-t/-f/管道功能,我顺利解决了环境快速搭建的问题,例如Tomcat的快速部署。具体步骤包括购买ECS服务器、配置安全组、远程登录并安装OS Copilot。使用-f参数成功安装并启动Tomcat,自动配置JDK,并通过|管道功能验证了生成内容的正确性。整个过程非常流畅,极大提升了工作效率。
135 12
|
10月前
|
XML Java 数据格式
Spring Core核心类库的功能与应用实践分析
【12月更文挑战第1天】大家好,今天我们来聊聊Spring Core这个强大的核心类库。Spring Core作为Spring框架的基础,提供了控制反转(IOC)和依赖注入(DI)等核心功能,以及企业级功能,如JNDI和定时任务等。通过本文,我们将从概述、功能点、背景、业务点、底层原理等多个方面深入剖析Spring Core,并通过多个Java示例展示其应用实践,同时指出对应实践的优缺点。
146 14
|
11月前
|
存储 NoSQL MongoDB
MongoDB 索引限制
10月更文挑战第22天
180 2
检查 PHP 中是否存在某个属性
检查 PHP 中是否存在某个属性
266 1
|
机器学习/深度学习 人工智能 搜索推荐
人工智能在医疗诊断中的应用与优势
人工智能在医疗诊断中的应用正为医疗领域带来革命性的改变。通过影像诊断、病理学分析和辅助决策等领域的应用,人工智能为医生提供了更准确、高效的诊断工具。然而,在解决数据隐私、可解释性和数据不平衡等挑战方面,我们还有很多工作要做。未来,随着技术的不断进步,人工智能将在医疗诊断领域发挥越来越重要的作用,为患者提供更好的医疗服务和治疗方案。
870 1
|
网络安全
【ES】elasticsearch在启动后出现[transport.netty][solr001] exception caught on transport layer[[[id:0x2d16759]]
elasticsearch在启动后出现[transport.netty][solr001] exception caught on transport layer[[[id:0x2d16759]]
688 0
|
Ubuntu Linux 编译器
iperf-2.0.9 在 Linux下的编译 与 海思(arm)平台的交叉编译
iperf-2.0.9 在 Linux下的编译 与 海思(arm)平台的交叉编译
1247 0
iperf-2.0.9 在 Linux下的编译 与 海思(arm)平台的交叉编译