灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:3595回复:0

ASP.NET中为DataGrid添加单选框

楼主#
更多 发布于:2011-09-01 02:47
使用DataGrid控件添加单选框时,如果直接在模板中加入RadioButton服务器控件,由于.Net的机制,无法将这些RadioButton在客户端出现在同一个组里面。这时我们可以使用Radio标签来实现。

  下面是HMTL 页面代码

<form id="Form1" method="post" runat="server">
 <asp:datagrid id="DataGrid1" runat="server" AutoGenerateColumns="False">
 <Columns>
  <asp:TemplateColumn>
   <ItemTemplate>
    <input type="radio" name="rdo" <%# GetChecked(DataBinder.Eval(Container, "DataItem")) %> value='<%# DataBinder.Eval(Container, "DataItem") %>'>
    <asp:Label runat="server" Text='<%# DataBinder.Eval(Container, "DataItem") %>' ID="Label1">
    </asp:Label>
   </ItemTemplate>
  </asp:TemplateColumn>
 </Columns>
 </asp:datagrid><br>
<asp:Button id="btnOk" runat="server" Text="确定"></asp:Button>

  下面是Page_Load中的数据绑定代码

Dim arr As New ArrayList
arr.Add("新闻综合")
arr.Add("综艺")
arr.Add("电影")
arr.Add("教育")
arr.Add("戏剧")
arr.Add("军事")
arr.Add("体育")
DataGrid1.DataSource = arr
DataGrid1.DataBind()

  下面是btnOk_Click中获取选择项的代码

Response.Write(Request.Form("rdo"))

  下面是设置绑定项中哪个Radio被中的函数

Public Function GetChecked(ByVal str As String) As String
 If str = Request.Form("rdo") Then
  Return "checked"
 Else
  Return ""
 End If
End Function

喜欢0 评分0
游客

返回顶部