惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
量子位
腾讯CDC
A
About on SuperTechFans
小众软件
小众软件
Microsoft Azure Blog
Microsoft Azure Blog
T
Tailwind CSS Blog
V
V2EX
B
Blog RSS Feed
H
Hackread – Cybersecurity News, Data Breaches, AI and More
GbyAI
GbyAI
Recent Announcements
Recent Announcements
Microsoft Security Blog
Microsoft Security Blog
博客园 - 叶小钗
罗磊的独立博客
宝玉的分享
宝玉的分享
WordPress大学
WordPress大学
大猫的无限游戏
大猫的无限游戏
IT之家
IT之家
V
Visual Studio Blog
D
DataBreaches.Net
博客园 - 三生石上(FineUI控件)
月光博客
月光博客
有赞技术团队
有赞技术团队

博客园 - 什么都不知道

DataSet的Xml序列化问题 VB.NET的一个小问题 Access is denied的问题 - 什么都不知道 存储过程output参数问题 SQL Server的效率? datagrid刷新问题 使用Visio DrawingControl的应用开发(补) 突起效果的Label WinForm下TextBox的数据绑定和更新 如何在运行时加载不处于应用程序目录下的assembly 使用VSA给程序加上脚本支持 删除所有Windows组件 在ASP.NET中嵌入wml标记 c#中动态装载dll 处理大型xml文件 RedirectToMobilePage的问题 使用Visio 2003 Drawing Control开发应用(3)(4) 使用Visio 2003 Drawing Control开发应用(2) 使用Visio 2003 Drawing Control开发应用(1)
使用Radio按钮选择DataGrid行
什么都不知道 · 2004-10-06 · via 博客园 - 什么都不知道

(读自http://www.dotnetbips.com/displayarticle.aspx?id=147 有源代码下载)
这个问题的出现是因为RadioButtons控件是不能直接加在DataGrid的模板列的。因为DataGrid会给每个单选按钮生成一个唯一名,这样这些单选按钮就不是一个组的了。

解决问题的办法是,在模板列中加入一个Label控件。在DataGrid的ItemDataBound事件中写<INPUT>元素,如:

        If e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.Item Then
            
Dim r As Label
            r 
= e.Item.FindControl("Label2")
            r.Text 
= "<input type=radio name='myradiogroup' value=" & e.Item.Cells(1).Text & ">"
        End If


如果要获得选中的值,就要用Request.Form来获取了

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

如果在PostBack之后要保留状态,就要自己做了

        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