首页 > 解决方案 > 单选按钮退出使用 rb 类更改

问题描述

我有一组单选按钮 (3),它们根据数据库的输入为每条记录填充正确的单选按钮。

它读取的数据列将只有以下三个值之一:“SLSC”、“SLDC”、“DLDC”。

在此基础上,将在记录中选中三个选项中的一个单选按钮。这工作得很好,直到我改变了正在使用的单选按钮的样式。我从默认的 vb 单选按钮更改为 SkinRadioButton 类,但是我保留了每个单选按钮的原始命名约定。

调试期间;我从数据库收到正确的响应,例如数据库返回“SLSC”作为值。在我的 SELECT CASE 部分中,它显示 DvrResp = SLSC 但未能看到真实的陈述,并且没有单选按钮设置为 true(或勾选)。它简单地查看 3 个案例,然后执行 CASE ELSE 并继续前进。更改为 SkinRadioButton 会严重导致这段代码现在无法像以前那样运行吗?有没有人能告诉我为什么会这样以及我需要做些什么来纠正这个问题?

代码:

    Private Sub LoadResp()
    Dim cmd As New SqlCommand
    Dim reader As SqlDataReader

    Try
        cmd.Parameters.Clear()
        cmd.CommandText = "SELECT DRIVER_COUNT 
                             FROM LOAD_INFO_TABLE 
                            WHERE PETS_LOAD_NUMBER = @dc"

        cmd.Parameters.AddWithValue("@dc", tbPetsLoadNumber.Text)

        cmd.CommandType = CommandType.Text
        cmd.Connection = New SqlConnection With {
            .ConnectionString = My.MySettings.Default.MY_DatabaseConnectionString
        }
        cmd.Connection.Open()

        Try
            reader = cmd.ExecuteReader()
            Dim DvrResp As String

            With reader
                .Read()

                DvrResp = .GetString(0)

                Select Case True
                    Case DvrResp = "SLSC"
                        rbSLSC.Checked = True
                        rbSLSC.BackColor = Color.Yellow
                        rbSLDC.BackColor = Color.Transparent
                        rbDLDC.BackColor = Color.Transparent

                    Case DvrResp = "SLDC"
                        rbSLDC.Checked = True
                        rbSLSC.BackColor = Color.Transparent
                        rbSLDC.BackColor = Color.Yellow
                        rbDLDC.BackColor = Color.Transparent

                    Case DvrResp = "DLDC"
                        rbDLDC.Checked = True
                        rbSLSC.BackColor = Color.Transparent
                        rbSLDC.BackColor = Color.Transparent
                        rbDLDC.BackColor = Color.Yellow
                    Case Else
                        Exit Select
                End Select

                Return

            End With

            reader.Close()

        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try

    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try
    cmd.Connection.Close()
End Sub

标签: vb.netradio-button

解决方案


推荐阅读