标题:怎么样获取动态生成的radiobutton的值
只看楼主
石婷
Rank: 2
等 级:论坛游民
帖 子:24
专家分:40
注 册:2011-5-26
结帖率:71.43%
已结贴  问题点数:20 回复次数:6 
怎么样获取动态生成的radiobutton的值
现要生成若干单项选择题,每一题ABCD四个选项。
通过下面的方法产生的radiobutton控件,不知道怎么获取值。请给位指点。
for (int i=0;i<sum;i++) //sum为总共要产生的题目数量
{
  for (int j=0;j<4;j++)
  {
  RadioButton rb=new RadioButton();
  rb.ID=stirng.Format("rb{0}",i);
  Panel.Controls.Add(rb);
  
  }
}
我应该怎么获取各题的radiobutton值?????
搜索更多相关主题的帖子: 选择题 
2011-06-05 13:38
fangdong65
Rank: 5Rank: 5
等 级:职业侠客
帖 子:73
专家分:301
注 册:2011-4-1
得分:10 
百度一下应该有相应解答的!
2011-06-05 14:14
不说也罢
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:39
帖 子:1481
专家分:4989
注 册:2007-10-7
得分:10 
以下是我用写的代码,你可以转换一下。
程序代码:
Public Class Form1
    '以下代码需要在窗体中画出一个按钮Button1
    Dim SelectRadio As RadioButton
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim List As New ArrayList
        For i As Integer = 0 To 4
            Dim s As Double = 0
            Dim ck As New RadioButton
            Me.Controls.Add(ck)
            List.Add(ck)
            List.Item(i).name = "RadioButton" & i.ToString
            List.Item(i).text = List.Item(i).name
            List.Item(i).width = 250
            If i = 0 Then
                List.Item(i).top = 3
            Else
                List.Item(i).top = List.Item(i - 1).top + List.Item(i - 1).height + 3
            End If
            List.Item(i).left = 5
            List.Item(i).tabindex = i
            List.Item(i).Visible = True
            AddHandler ck.Click, AddressOf RadioButton1_Click
        Next

    End Sub

    Private Sub RadioButton1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        SelectRadio = sender
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        MsgBox(SelectRadio.Name & " 被选中了。")
    End Sub
End Class



[ 本帖最后由 不说也罢 于 2011-6-5 14:23 编辑 ]

===================================================
讨厌C#的行尾的小尾巴;和一对大括号{ }
===================================================
2011-06-05 14:16
石婷
Rank: 2
等 级:论坛游民
帖 子:24
专家分:40
注 册:2011-5-26
得分:0 
回复 3楼 不说也罢
肿么办,看不太懂。
2011-06-05 15:29
石婷
Rank: 2
等 级:论坛游民
帖 子:24
专家分:40
注 册:2011-5-26
得分:0 
是这样子的,我有一个按钮点击之后就出来一套试卷,然后做完之后点击“提交”来处理选中的radiobutton,是很多题啊,要怎么接受这些radiobutton的值
2011-06-05 16:02
不说也罢
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:39
帖 子:1481
专家分:4989
注 册:2007-10-7
得分:0 
这个办法很多种,radiobutton本身没有Value属性,可以使用其Tag属性来表示其值,上面的程序加上List.Item(i).Tag="你要传递的值";也可以在动态增加该控件中使用一个String数组来保存其对应的值
程序代码:
Public Class Form1
    '以下代码需要在窗体中画出一个按钮Button1
    Dim SelectRadio As New RadioButton
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim List As New ArrayList
        For i As Integer = 0 To 4
            Dim s As Double = 0
            Dim ck As New RadioButton
            Me.Controls.Add(ck)
            List.Add(ck)
            List.Item(i).name = "RadioButton" & i.ToString
            List.Item(i).text = List.Item(i).name
            List.Item(i).Tag = Rnd(10).ToString'我这里用了一个随机数,表示这一题目答案吧
            List.Item(i).width = 250
            If i = 0 Then
                List.Item(i).top = 3
            Else
                List.Item(i).top = List.Item(i - 1).top + List.Item(i - 1).height + 3
            End If
            List.Item(i).left = 5
            List.Item(i).tabindex = i
            List.Item(i).Visible = True
            AddHandler ck.Click, AddressOf RadioButton1_Click
        Next

    End Sub

    Private Sub RadioButton1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        SelectRadio = sender
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        MsgBox(SelectRadio.Name & " 这一题的答案是" & SelectRadio.Tag)
    End Sub
End Class



[ 本帖最后由 不说也罢 于 2011-6-5 17:17 编辑 ]

===================================================
讨厌C#的行尾的小尾巴;和一对大括号{ }
===================================================
2011-06-05 17:13
ryanvip
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2011-5-18
得分:0 
关注
2011-06-14 11:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-341954-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.038794 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved