Vb.net 查找组合框项

Vb.net 查找组合框项,vb.net,combobox,Vb.net,Combobox,对于这个问题,我上了一堂简单的课: Public Class ListBoxEntry Public Property ID As Integer Public Property Text As String Public Overrides Function ToString() As String Return Text End Function End Class 我创建了该类的一些实例,并将它们添加到组合框中: ... While DR

对于这个问题,我上了一堂简单的课:

Public Class ListBoxEntry
    Public Property ID As Integer
    Public Property Text As String

    Public Overrides Function ToString() As String
        Return Text
    End Function
End Class
我创建了该类的一些实例,并将它们添加到组合框中:

...
While DR.Read
  LI = New ListBoxEntry
  LI.ID = DR("ID") ' ID is an integer value
  LI.Text = DR(Feldname) ' Feldname is a string
  cmbList.Items.Add(LI)
End While
我无法通过代码获得将combobox设置为特定值的工作代码。 例如,这是我的三个条目(ID-姓名):

1-一(值1,在组合框“一”中显示文本)
2-2(值2,在组合框“2”中显示文本)
3-三(值3,在组合框“三”中显示文本)

Combobox1.SelectedIndex=以某种方式(2)您应该将类的实例添加到数组或集合中,然后将其绑定到您的
ComboBox
,例如

With ComboBox1
    .DisplayMember = "Text"
    .ValueMember = "ID"
    .DataSource = myList
End With
ComboBox.SelectedValue = 2
然后,您可以将
ID
值分配给
组合框的
SelectedValue
属性,以选择具有该
ID
的项目,例如

With ComboBox1
    .DisplayMember = "Text"
    .ValueMember = "ID"
    .DataSource = myList
End With
ComboBox.SelectedValue = 2

这将在控件中显示“2”。

显然,您可以使用任何您想要的命名约定,但为什么您认为您需要在该类型名称上使用“cls”前缀?你一直在使用.NET Framework中没有前缀的类,那么它到底有什么用呢?我知道-我只是为了这个问题添加了cls,并认为它会有所帮助。我不会再那样做了。感谢您的提示假设
Class
关键字就在声明中的类名之前,这没有帮助。即使没有声明,人们通常也会认为大多数类型都是类,这是绝对应该的,因此您只需要指出什么是结构。这通常并不重要,但也可能很关键,这取决于具体情况。如前所述:你是对的,感谢你澄清这一点-我编辑了上面的代码