无线电按钮的背色变化,带按钮外观

时间:2015-06-05 09:49:44

标签: vb.net visual-studio-2013

我在VS2013中创建了一个实验室应用程序,用户在其中输入一个机架号,并获取一个可视网格,其中包含他/她必须称重的样本以进行特定分析,对于具有样本的特定机架。

我根据请求/发送的SQL字符串从Oracle DB获取信息。

我已创建单选按钮作为选择/过滤分析类型的方法。 我在对象属性中给了它们常规按钮的外观。

单击某些单选按钮时,我想根据分析类型为其指定特定颜色。 相同的颜色将用于标记要在视觉网格中称量的样本。

当我测试程序时,单选按钮执行他们需要做的事情(意思是:从Oracle DB获取正确的信息),但我似乎无法管理单选按钮的背景颜色更改。 常规按钮(在可视网格上)的背景颜色变化正常工作。

我通过函数Rbanalysistype(发件人作为对象,e作为EventArgs)触发所有这些功能,处理 Rbanalysistype1 。点击, Rbanalysistype2 。点击,... < / p>

Public Function RbAnaTypeClick(sender As Object, e As EventArgs) Handles RbAnaTypeAcIn.CheckedChanged
    Dim SenderName As String = ""
    Dim TitrType As String = ""

    SenderName = CType(sender, RadioButton).Name

    Select Case SenderName

        Case Is = "RbAnaTypeAcIn"
            TitrType = "AcIn"

            'put correct Radiobuttion in GbAnaType in color
            If RbAnaTypeAcIn.Checked = True Then
                RbAnaTypeAcIn.BackColor = Color.Orange
            End If

    End Select

End Function

1 个答案:

答案 0 :(得分:1)

您开始处理错误的事件。这是你应该做的事情:

Private Sub RadioButtons_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton1.CheckedChanged,
                                                                                  RadioButton2.CheckedChanged
    Dim rb = DirectCast(sender, RadioButton)

    If rb.Checked Then
        rb.BackColor = Color.Red
    Else
        rb.BackColor = Color.Green
    End If
End Sub