1

我对我的 VB.NET 有点生疏,尤其是在转换为 SQL 时。我以为我有一个隐藏 2 个按钮的简单任务,除非选中一个复选框。该复选框绑定到具有bit数据类型的 SQL Server 列。

我的代码如下:

Private Sub CaseVehicleCollisionCheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles CaseVehicleCollisionCheckBox1.CheckedChanged
    Dim collision As System.Data.SqlTypes.SqlBinary
    collision = CaseVehicleCollisionCheckBox1

    If collision = True Then
        btnVehicle1.Visible = True
        btnVehicle2.Visible = True
    ElseIf collision = False Then
        btnVehicle1.Visible = False
        btnVehicle2.Visible = False
    End If

End Sub

我不断收到错误

“System.Windows.Forms.CheckBox”类型的值无法转换为“System.Data.SqlTypes.SqlBinary”

尝试将复选框分配给变量时。

尝试使用时出现相同的错误System.Data.SqlTypes.SqlBoolean

4

2 回答 2

2

问题是您正在将 CheckBox 控件强制转换为 SQLBinary 数据类型,但这是行不通的。

我认为 CaseVehicleCollisionCheckBox1 是 CheckBox 的名称。您需要使用CheckBoxes Checked property,例如:

Dim collision As Boolean
collision = CaseVehicleCollisionCheckBox1.Checked
于 2013-04-15T04:33:56.170 回答
0

使用 SqlBoolean 而不是 sqlBinary。sqlBinary 是字节数组的 sql 等价物。

于 2013-04-15T04:40:59.857 回答