利用radio实现Datagrid的单选

原创 2004年02月12日 14:23:00

          在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测试通过。

EasyUI——DataGrid中嵌入Radio

前一篇博客写到项目中的广告位管理,当时没有写到今天的问题,这个问题当时也是困扰我好久。经过自己的努力和同志们的帮助,最后终于解决。 实现要求把所有的广告位后面的单选按钮设成一组,目的是一个广告位只能显...
  • u010926964
  • u010926964
  • 2015年07月20日 10:45
  • 5045

在DataGrid中添加Radio(单选按钮)列

查看例子  DataTable Cart; DataView CartView; ICollection CreateDataSource()  {  DataTable dt = new DataT...
  • net_lover
  • net_lover
  • 2004年07月17日 13:56
  • 7028

ASP.NET中为DataGrid添加单选框

 使用DataGrid控件添加单选框时,如果直接在模板中加入RadioButton服务器控件,由于.Net的机制,无法将这些RadioButton在客户端出现在同一个组里面。这时我们可以使用Radio...
  • fengfangfang
  • fengfangfang
  • 2006年08月23日 14:11
  • 1938

在DataGrid中添加Radio实现单选

[b]-------------------------------------aspx页面中关键代码:[/b]   [b][/b]......其他数据绑定在页面的合适位置加入下面的代码。以看到执行效...
  • PPLUNCLE
  • PPLUNCLE
  • 2004年12月18日 13:55
  • 1462

datagrid中实现单选

@ Page language="c#" Codebehind="DataGrid加单选框.aspx.cs" AutoEventWireup="false" Inherits="bsTest2005_...
  • szp1118
  • szp1118
  • 2006年11月15日 14:12
  • 680

DataGrid中的全选和单选的功能

在WPF中DataGrid和CheckBox的联合使用是非常常见的,但是在DataGrid中怎 么实现全选和部分选择的功能并没有现成的控件去使用。要想实现该功能,必须人工通 过代码来完成。关于实现...
  • u010375663
  • u010375663
  • 2015年11月28日 10:20
  • 2090

在DataGrid中使用单选框

 在DataGrid中使用单选框 其实现步骤如下 1.              在DataGrid中添加一列模板列,在模板列中加入单选框,但是不能用RadioButton,这样就不能达到效果,其HT...
  • JOHNCOOLS
  • JOHNCOOLS
  • 2007年05月14日 16:28
  • 1607

jquery easyui datagrid 获取Checked选择行(勾选行)数据

getSelected:取得第一个选中行数据,如果没有选中行,则返回 null,否则返回记录。 getSelections:取得所有选中行数据,返回元素记录的数组数据。 getChecked:取得ch...
  • hzw2312
  • hzw2312
  • 2014年05月29日 15:23
  • 63972

利用radio实现Datagrid的单选

          在datagrid中,我们可能会需要实现这种功能——列的单选,本身datagrid提供了select命令可以实现这种功能。另为也可以利用HTML 控件中的radiobutton来实...
  • guoyan19811021
  • guoyan19811021
  • 2004年02月12日 14:23
  • 1984

在DataGrid中添加Radio(单选按钮)列

aspx页面:******************************************************************   radioonly        http://...
  • PPLUNCLE
  • PPLUNCLE
  • 2004年08月21日 14:34
  • 1393
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用radio实现Datagrid的单选
举报原因:
原因补充:

(最多只允许输入30个字)