Vb.net VB6到VBNet-列表框。已选定

Vb.net VB6到VBNet-列表框。已选定,vb.net,vb6,listbox,vb6-migration,Vb.net,Vb6,Listbox,Vb6 Migration,我目前有一个select案例,它将从记录集中读取一个名称字段,以及从该记录集中读取一个布尔值,该布尔值用于确定是否将该字段包含在稍后生成的报告中 问题是,在VB6中,您可以为ListBox指定一个布尔值 现在,我一辈子都无法根据记录集中的布尔值确定将其分配给什么,选择或不选择该字段 代码: Do Until rs_1.EOF 'Until we run out of records ... str_FieldName = rs_1.Fields("FieldNa

我目前有一个select案例,它将从记录集中读取一个名称字段,以及从该记录集中读取一个布尔值,该布尔值用于确定是否将该字段包含在稍后生成的报告中

问题是,在VB6中,您可以为ListBox指定一个布尔值

现在,我一辈子都无法根据记录集中的布尔值确定将其分配给什么,选择或不选择该字段

代码:

Do Until rs_1.EOF
        'Until we run out of records ...

        str_FieldName = rs_1.Fields("FieldName").Value
        b_IncludeField = rs_1.Fields("IncludeInBatchReport").Value

        Select Case str_FieldName
            Case "Sequence"
                listbox_Fields.Items.Add("Sequence")
                listbox_Fields.SelectedItem(listbox_Fields.Items.Count - 1) = b_IncludeField
            Case "BldgNo"
                listbox_Fields.Items.Add("BldgNo")
                listbox_Fields.SelectedItem(listbox_Fields.Items.Count - 1) = b_IncludeField
            Case "BldgName"
                listbox_Fields.Items.Add("BldgName")
                listbox_Fields.SelectedItem(listbox_Fields.Items.Count - 1) = b_IncludeField
            Case "BldgFunc"
                listbox_Fields.Items.Add("BldgFunc")
                listbox_Fields.SelectedItem(listbox_Fields.Items.Count - 1) = b_IncludeField
            Case "POC"
                listbox_Fields.Items.Add("POC")
                listbox_Fields.SelectedItem(listbox_Fields.Items.Count - 1) = b_IncludeField
            Case "Phone"
                listbox_Fields.Items.Add("Phone")
                listbox_Fields.SelectedItem(listbox_Fields.Items.Count - 1) = b_IncludeField
            Case "AH_Phone"
                listbox_Fields.Items.Add("AH_Phone")
                listbox_Fields.SelectedItem(listbox_Fields.Items.Count - 1) = b_IncludeField
            Case "Batch"
                listbox_Fields.Items.Add("Batch")
                listbox_Fields.SelectedItem(listbox_Fields.Items.Count - 1) = b_IncludeField
            Case "Status"
                listbox_Fields.Items.Add("Status")
                listbox_Fields.SelectedItem(listbox_Fields.Items.Count - 1) = b_IncludeField
            Case "Region_Req"
                listbox_Fields.Items.Add("Region_Req")
                listbox_Fields.SelectedItem(listbox_Fields.Items.Count - 1) = b_IncludeField
            Case "Region_Alt"
                listbox_Fields.Items.Add("Region_Alt")
                listbox_Fields.SelectedItem(listbox_Fields.Items.Count - 1) = b_IncludeField
            Case "Region_Fin"
                listbox_Fields.Items.Add("Region_Fin")
                listbox_Fields.SelectedItem(listbox_Fields.Items.Count - 1) = b_IncludeField
            Case "Comments"
                listbox_Fields.Items.Add("Comments")
                listbox_Fields.SelectedItem(listbox_Fields.Items.Count - 1) = b_IncludeField
        End Select

        rs_1.MoveNext()

        '... until we run out of records.
    Loop

如您所见,我尝试了SelectedItem,但这当然不起作用。

您正在寻找的。

太棒了。非常感谢你。我会在7分钟内接受你的回答。除了Slaks的答案之外,您还可以查看使用列表中的复选框,其中包含
.Checked()
属性。