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

相关文章
|
7月前
|
Android开发
ScrollView中嵌套ListView的问题(转)
ScrollView中嵌套ListView的问题(转)
33 2
|
7月前
|
XML Java Android开发
Android控件之基础控件——进度条类的view——TextView、Checkbox复选控件、RadioButton单选控件、ToggleButton开关、SeekBar拖动条、menu、弹窗
Android控件之基础控件——进度条类的view——TextView、Checkbox复选控件、RadioButton单选控件、ToggleButton开关、SeekBar拖动条、menu、弹窗
706 1
|
7月前
|
C#
45.c#:listview控件
45.c#:listview控件
48 1
ListView、TreeView和DataGrid。
原文:ListView、TreeView和DataGrid。 1、ListView。 ListView继承自简单的没有特色的ListBox,并使用View属性进行扩展。增加了对基于列显示的支持,并增加了快速切换视图或显示模式的能力,而不需要重新绑定数据以及重新构建列表。
1247 0
|
Java Android开发
NestedScrollView嵌套RecyclerView最后一条item显示不全
NestedScrollView嵌套RecyclerView最后一条item显示不全 首先要在最外层的NestedScrollView配置属性 android:fillViewport="true": 然后在上层Ja...
8250 0