Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如何在数据库中加载复选框列表的状态?_Asp.net_Vb.net - Fatal编程技术网

Asp.net 如何在数据库中加载复选框列表的状态?

Asp.net 如何在数据库中加载复选框列表的状态?,asp.net,vb.net,Asp.net,Vb.net,我有1个复选框列表,里面有6个复选框(下面是我的数据库) 当我单击一个复选框时,该值将作为TRUE保存到我的数据库中。这是我的密码: Dim connectionString As String = ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString Dim insertSql As String = "INSERT INTO tbinterest(interest) VALUES(@intere

我有1个复选框列表,里面有6个复选框(下面是我的数据库)

当我单击一个复选框时,该值将作为
TRUE
保存到我的数据库中。这是我的密码:

Dim connectionString As String = ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString
Dim insertSql As String = "INSERT INTO tbinterest(interest) VALUES(@interest)"

Using myConnection As New SqlConnection(connectionString)
    myConnection.Open()
    Dim myCommand As New SqlCommand(insertSql, myConnection)
    myCommand.Parameters.AddWithValue("@interest", SqlDbType.Bit).Value = 1
    myCommand.ExecuteNonQuery()
    myConnection.Close()
End Using
但不知何故,当我加载页面时,它不会显示选中状态(选中/未选中)。这是我在页面加载中的代码。你能帮我吗?谢谢

Dim connectionString As String = ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString
Using myConnection As New SqlConnection(connectionString)     
    Dim objCmd_team As SqlCommand = New SqlCommand("SELECT [interest] FROM [tbinterest]", myConnection)
    myConnection.Open()
    Dim objReader As SqlDataReader = objCmd_team.ExecuteReader()

    While (objReader.Read())
        Dim currentCheckBox As ListItem = chkApprovers.Items.FindByText(objReader("interest"))

        If currentCheckBox IsNot Nothing Then
            currentCheckBox.Selected = True
        End If
    End While     
End Using

您的代码似乎是正确的。。请检查此行是否有listitem有值的断点

暗淡的 currentCheckBox As 列表项= chkApprovers.Items。 FindByText(objReader (利息)

如果listitem为nothing,请尝试以下操作

暗淡的 currentCheckBox As 列表项= chkApprovers.Items。 FindByText(objReader.Item (“利息”)。ToString)

还有一件事,您只保存位值作为利息,那么您是如何将其与复选框匹配的。 只能与checkboy文本值或id值匹配


希望这有帮助。

哦,那么我如何匹配位值呢?
Dim connectionString As String = ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString
Using myConnection As New SqlConnection(connectionString)     
    Dim objCmd_team As SqlCommand = New SqlCommand("SELECT [interest] FROM [tbinterest]", myConnection)
    myConnection.Open()
    Dim objReader As SqlDataReader = objCmd_team.ExecuteReader()

    While (objReader.Read())
        Dim currentCheckBox As ListItem = chkApprovers.Items.FindByText(objReader("interest"))

        If currentCheckBox IsNot Nothing Then
            currentCheckBox.Selected = True
        End If
    End While     
End Using