检查单选按钮的名称是否为字符串

时间:2014-12-22 23:13:58

标签: vb.net loops controls

所以,让我说我的表格上有5个单选按钮。

在我的代码中,我想查看RadioButton3。 我有" RadioButton3"存储在字符串变量(RadName)

我已经可以遍历窗体上的控件了。如何在循环到达时检查(实际上是否填充了单选按钮),RadioButton3?

   For Each RadioButtn As Control In Me.gbWriteXML.Controls
        If (TypeOf RadioButtn Is RadioButton) Then
           ---code here for checking the radio button---
        End If
    Next

.gbWriteXML是一个组合框。只是为了避免任何混淆。我想的是:

If RadioButtn.Name = RadName Then
      RadName.Checked = True (or .PerformClick for that button)
End If

如何通过控件的名称实际获取与RadName字符串关联的控件? 我需要这个代码能够将radiobutton的名称作为字符串硬编码或在运行时输入程序,循环直到它找到具有匹配名称的单选按钮,然后实际接受该单选按钮控制,然后检查它以及#39; s填蓝色。

1 个答案:

答案 0 :(得分:0)

不要循环。只需使用Controls.Find()来搜索它:

    Dim RadName As String = "RadioButton3"
    Dim matches() As Control = Me.Controls.Find(RadName, True)
    If matches.Length > 0 AndAlso TypeOf matches(0) Is RadioButton Then
        Dim rb As RadioButton = DirectCast(matches(0), RadioButton)
        rb.Checked = True
    End If