1
我有一个从SQL Server检索数据到CheckedListBox设置默认选中的项目在CheckedLIstBox VB.Net
Dim queryString As String = "SELECT Facility FROM Database.dbo.Facility"
Dim connection As New SqlConnection(connectionString)
Dim command As New SqlCommand(queryString, connection)
connection.Open()
Dim dataReader As SqlDataReader = command.ExecuteReader()
Dim var As New DataTable
Dim source As New BindingSource
source.DataSource = dataReader
CheckList_Facility.DataSource = source
CheckList_Facility.ValueMember = "Facility"
connection.Close()
结果效果很好代码,假设我有结果:
[ ]AA
[ ]BB
[ ]CC
我想检查是否有“BB”,那么它会自动检查“BB”,使
[ ]AA
[X]BB
[ ]CC
我试过,但失败了。一些喜欢
For Each item In CheckedList_Facility.Items
If (item("Facility").ToString() = "BBB") Then
CheckedList_Region.SelectedValue = True
Next
尝试,如果它确实会返回一个字符串,我测试的代码
For Each item In CheckedList_Facility.Items
MsgBox(item("Facility").ToString())
Next
它不会返回 “AA”, “BB”, “CC”
当你通过它进行调试时,它是否注意到'item(“Facilit y“)。ToString'是”BBB“?它只是不检查复选框? – Alex
如果有BB在哪里?据我所见,你只从数据库中检索一个字段,这就是复选框的标签。 –
@Adruan Wragg,它不是一个标签,而是一系列物品。检索代码的工作原理 - 它确实返回一个设施列表,如 – user2103670