中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > Web开发 > .NET > ASP.NET
为DataGrid列添加Radio(单选框)列
作者:未知 时间:2004-07-17 12:12 出处:互联网 责编:chinaitpower
              摘要:暂无

经常看到论坛上有人问在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>
关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有