在datagrid中,我们可能会需要实现这种功能——列的单选,本身datagrid提供了select命令可以实现这种功能。另为也可以利用HTML 控件中的radiobutton来实现这样的功能,当然这也是我们所习惯的。

好的,现在来实现它。  首先在页面上加入DataGrid控件。

  • 第一列设置为模板列,在项模板中加入label
  • 再将datagrid绑定上数据

具体格式如下:

〈asp:DataGrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 8px; POSITION: absolute; TOP: 8px" runat="server" BorderColor="#CC9966" BorderStyle="None" BorderWidth="1px" BackColor="White" CellPadding="4" AutoGenerateColumns="False" Width="176px" Height="22px"> 〈SelectedItemStyle Font-Bold="True" ForeColor="#663399" BackColor="#FFCC66">〈/SelectedItemStyle>

〈ItemStyle ForeColor="#330099" BackColor="White">〈/ItemStyle> 〈HeaderStyle Font-Bold="True" ForeColor="#FFFFCC" BackColor="#990000">〈/HeaderStyle>

〈FooterStyle ForeColor="#330099" BackColor="#FFFFCC">〈/FooterStyle> 〈Columns>

〈asp:TemplateColumn HeaderText="Select">

〈ItemTemplate>

〈asp:Label id="Label2" runat="server">〈/asp:Label>

〈/ItemTemplate>

〈/asp:TemplateColumn>

〈asp:BoundColumn DataField="a" HeaderText="Last Name">〈/asp:BoundColumn> 〈/Columns>

〈PagerStyle HorizontalAlign="Center" ForeColor="#330099" BackColor="#FFFFCC">〈/PagerStyle>

〈/asp:DataGrid>

再在页面上加入一个label(用于显示我们在Datagrid中单选的项)和一个Button(查看选中项),如下:

〈asp:Label id="Label3" style="Z-INDEX: 103; LEFT: 222px; POSITION: absolute; TOP: 35px" runat="server" Width="184px">〈/asp:Label> 〈asp:Button id="Button1" style="Z-INDEX: 102; LEFT: 218px; POSITION: absolute; TOP: 70px" runat="server" Text="Display Selected Value">〈/asp:Button〉

在后台代码中:

  • 在DataGrid的ItemDataBound事件中

If e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.Item Then
            Dim lbl As Label
            lbl  = e.Item.FindControl("Label2")

'加入radio
            lbl .Text = "<input type=radio name='myradiogroup' value=" & e.Item.Cells(1).Text & ">"
        End If

  • 在Button的click事件中

Label3.Text = Request.Form("myradiogroup")

Dim i As DataGridItem
        For Each i In DataGrid1.Items
            If i.ItemType = ListItemType.AlternatingItem Or i.ItemType = ListItemType.Item Then
                Dim r As Label
                r = i.FindControl("Label2")

If r.Text.IndexOf(Label3.Text) > 0 Then
                    r.Text = "<input type=radio name='myradiogroup' value=" & i.Cells(1).Text & " checked>"
                Else
                    r.Text = "<input type=radio name='myradiogroup' value=" & i.Cells(1).Text & ">"
                End If
            End If
        Next

好了,这样就可以实现利用radio实现Datagrid的单选的功能了。

如图:

当我们选中其中一项,点击"查看选中内容"时,如图:

在vs.net2003、iis5.0测试通过。

转载于:https://www.cnblogs.com/neozhu/archive/2005/02/01/100241.html

利用radio实现Datagrid的单选相关推荐

  1. 利用Ajax实现DataGrid无刷新分页(AjaxGrid)【转】

    利用Ajax实现DataGrid无刷新分页(AjaxGrid) DataGrid功能强大,我们只用写几行代码就能够实现复杂的页面数据显示.数据多的时候免不了要分页显示,DataGrdi本身自带分页功能 ...

  2. radio做选择题的单选功能

    radio做选择题的单选功能 前一段时间做了一个选择答题的一个功能,需求必须的是一个问题三个选项,还必须是单选,而且只能选择一个,在实现的过程中呢,踩了不少坑,今天呢给大家分享一下. 效果呢大概实这样 ...

  3. easyui datagrid 实现单选并能取消单选

    var intjavadillcheck=0; var rowjavadillselect=null; function ghm_getPageListCallback(result){if(resu ...

  4. datagrid资料+ by iCeSnaker - Program rhapsody

    datagrid资料+ by iCeSnaker - Program rhapsody 关于datagrid的打印 http://www.chinaaspx.com/article/csharp/29 ...

  5. 【转贴CSDN】关于DataGrid的精华

    [转贴CSDN]关于DataGrid的精华 1.DataGrid动态模板列更新数据并且分页的例子 http://www.cnblogs.com/lovecherry/archive/2005/03/2 ...

  6. 【分享】WebForm中DataGrid的20篇经典文章

    1.DataGrid动态模板列更新数据并且分页的例子 http://www.cnblogs.com/lovecherry/archive/2005/03/26/126102.html 2.DataGr ...

  7. (转)DataGrid资料

    DataGrid的正反双向排序 http://dev.csdn.net/develop/article/26/26817.shtm DataGrid删除确认及Item颜色交替 http://dev.c ...

  8. 【分享】WebForm中DataGrid的经典文章 及一些网址收藏

    [分享]WebForm中DataGrid的20篇经典文章 自认为以下文章比较经典,希望对初学者有用^_^ 1.DataGrid动态模板列更新数据并且分页的例子 http://www.cnblogs.c ...

  9. DataGrid用法集锦[收藏]

    关于datagrid的打印 http://www.chinaaspx.com/article/csharp/295.htm C#中为DataGrid添加下拉列表框 http://www.cnblogs ...

最新文章

  1. 什么业务场景适合使用Redis?
  2. hadoop配置安装
  3. Android之unable to execute dex java heap space解决方案
  4. 利用逆矩阵解线性方程组_QR方法求解矩阵所有特征值(一)
  5. Objective-C语法简化
  6. pkpm板按弹性计算还是塑性_PKPM中的S\R验算显红原因分析
  7. 将Springboot项目放在服务器上一直运行
  8. 作者:姜春宇(1987-),男,中国信息通信研究院移动互联网与大数据部工程师,数据中心联盟大数据技术与产品工作组组长。...
  9. 1 利用Anaconda完美解决Python 2与python 3的共存问题
  10. 经常使用的webservice接口
  11. 如何将位图格式图片文件(.bmp)生成geotiff格式图片?
  12. 强大的.NET反编译工具Reflector及插件 (转)
  13. 通过微软私有云MCSE认证
  14. 阿里入职培训,针不搓
  15. inux命令大全完整版
  16. 使用 ffmpeg 从视频文件提取音频
  17. SpringBoot MySQL #1 报错 Error executing DDL ...
  18. php微信支付宝第三方接口开发平台,帝国CMS第三方个人支付接口微信支付宝免签约即时到账api_帝国网站管理系统插件...
  19. 武汉科技大学计算机复试机试,2019年武汉科技大学考研复试及录取工作方案
  20. android手机如何访问电脑tomcat服务器

热门文章

  1. Python入门系列之字符编码
  2. 简单介绍Lua中三种循环语句的使用
  3. 来看看企业如何拥抱混合云?
  4. win7科学计算机的用法,win7中计算器的多种用法
  5. 平衡二叉树-splay c/c++代码实现
  6. 最小割 ---- 集合冲突模型 ----- P1646 [国家集训队]happiness
  7. codeforces 337D:树形dp[能到最远的一定可以到其他点]
  8. java mod %区别_Java中 % 与Math.floorMod() 区别详解
  9. 我花了三个小时写了一道题的六千字题解....(POJ 2888 Magic Bracelet)
  10. 【算法笔记】莫比乌斯反演(包含定理,两种形式的证明及入门经典模板)