为DataGrid列添加Radio(单选框)列

原创 2007年09月24日 12:10:00
 

经常看到论坛上有人问在DataGrid中如何实现单选,下面就是一种实现的方法。

查看例子

<%@ Page Language="C#" AutoEventWireup="True" EnableViewState = "true"%> <%@ Import Namespace="System.Data" %> <html> <script runat="server"> DataTable Cart; DataView CartView; ICollection CreateDataSource() { DataTable dt = new DataTable(); DataRow dr; dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32))); dt.Columns.Add(new DataColumn("StringValue", typeof(string))); dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double))); for (int i = 0; i < 101; i++) { dr = dt.NewRow(); dr[0] = i; dr[1] = "Item " + i.ToString(); dr[2] = 1.23 * (i+1); dt.Rows.Add(dr); } DataView dv = new DataView(dt); return dv; } void Page_Load(Object sender, EventArgs e) { string js = ""; js+="<script>/r/n"; js+="function ld(){/r/n"; js+="for(i=0;i<document.getElementsByName('RadioName').length;i++)/r/n"; js+="if(document.getElementsByName('RadioName')[i].value=="; js+="document.getElementById('" + rd.ClientID + "').value) "; js+="document.getElementsByName('RadioName')[i].checked=true/r/n"; js+="}/r/n"; js+="window.onload=ld/r/n"; js+="</"+"script>/r/n"; this.RegisterStartupScript("js",js); if (!IsPostBack) { ItemsGrid.DataSource = CreateDataSource(); ItemsGrid.DataBind(); } } void Grid_Change(Object sender, DataGridPageChangedEventArgs e) { ItemsGrid.CurrentPageIndex = e.NewPageIndex; ItemsGrid.DataSource = CreateDataSource(); ItemsGrid.DataBind(); } void btnClick(Object sender, EventArgs e) { if(Request.Form["RadioName"] != null) { rd.Value = Request.Form["RadioName"].ToString(); Label1.Text = "您所选择的是:<font color=red>" + Request.Form["RadioName"].ToString() +"</font>"; } } </script> <body> <form runat="server" id=MM> <input type="hidden" id=rd runat=server/> <asp:DataGrid id="ItemsGrid" runat="server" BorderColor="black" BorderWidth="1" CellPadding="3" AllowPaging="true" AutoGenerateColumns="false" OnPageIndexChanged="Grid_Change"> <HeaderStyle BackColor="#00aaaa"></HeaderStyle> <PagerStyle Mode="NumericPages"></PagerStyle> <Columns> <asp:TemplateColumn> <ItemTemplate> <input type=radio name="RadioName" value='<%# DataBinder.Eval(Container.DataItem, "IntegerValue")%>'/> </ItemTemplate> </asp:TemplateColumn> <asp:BoundColumn HeaderText="数字列" DataField="IntegerValue"/> <asp:BoundColumn HeaderText="字符串列" DataField="StringValue"/> <asp:BoundColumn HeaderText="货币列" DataField="CurrencyValue" DataFormatString="{0:c}"> <ItemStyle HorizontalAlign="right"></ItemStyle> </asp:BoundColumn> </Columns> </asp:DataGrid> <br> <asp:Button id="Btn" Text="看你选择的" OnClick="btnClick" runat="server"/> <asp:Label id="Label1" Text="" runat="server"/> </form> </body> </html>
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

取消选中单选框radio的三种方式

注:验证有效。 http://blog.csdn.net/renfufei/article/details/17465267 本文提供了三种取消选中radio的方式,代码示例如下: ...

安卓初学:Radio单选框和checkBox多选控件的主要用法以及事件绑定总结

Radio单选框,我们很常见,选择男女的时候我们经常要用它,他的特点就是只能选择一个,在html中,多个选项使得radio只能选择一个我们需要使它们的id相同,SWT中我们把它们放入一个group中。...

怎么修改单选框radio默认样式

怎么修改单选框radio默认样式 苏生不惑 5.6k 2014年05月27日 提问 关注 1 关注 收藏 3 收藏,27.4k 浏览 问...

第十回 JavaFX2.0单选框Radio Button

文本来自我的翻译文章http://somefuture.iteye.com/blog/1197539 原文地址http://download.oracle.com/javafx/2.0/...

Ajax中根据json数据不同,对页面上的单选框Radio进行回显

Ajax中根据json数据不同,对页面上的单选框Radio进行回显 js代码: $(document).ready(function(){ $.ajax({ type: "...

怎么修改单选框radio默认样式

div> input type="radio" id="nba" checked="checked" name="sport" value="nba"> label name=&q...

(翻译)第十回 JavaFX2.0单选框Radio Button

原文地址http://download.oracle.com/javafx/2.0/ui_controls/radio-button.htm#BABBJBDA   RadioButton类...

一款单选框radio样式

.radio-btn { width: 20px; height: 20px; display: inline-block; ...
  • vuturn
  • vuturn
  • 2015-12-10 09:57
  • 2118

为Flex Datagrid添加复选框列

本文转载自:http://www.riafan.com/add-checkbox-column-for-flex-datagrid/ 以下为正文内容: 如果设置MX DataGrid的...

复选框(checkbox)和单选框(radio)与文字居中对齐

最近的项目涉及到很多表单的制作,特别是复选框(checkbox)和单选框(radio)。但是在前端开发过程中发现,单(复)选框和它们后面的 提示文字在不进行任何设置的情况下,是无法对齐的,而且在Fir...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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