Select 基于预定义字符串的 Dropbox 索引

Select Dropbox index based on predefined string

我有一个包含固定数量项目的保管箱,定义为:

"A --- item 1"

"B --- item 2"

"C --- item 3"

我从程序的其他地方得到一个字符串,其中包含项目的第一个字母。例如乙 当加载带有保管箱的表单时,我想预选带有该字母的索引。

我考虑过使用 InStr,但似乎行不通。

With Frm
Dim TmpStr as String = String.Empty
TmpStr = Str.InStr(0,1)

Select Case TmpStr
 Case "A"
   cbox.SelectedValue = 0
 Case "B"
   cbox.SelectedValue = 1
 Case "C"
   cbox.SelectedValue = 2
End Case
End With

要获取字符,您可以使用 TmpStr = Str.Substring(0,1) 获取字符串格式的单个字符或 TmpStr = Str.First() 其中 returns 第一个字母作为字符类型。

然后,正如我在评论中提到的,在您的 select 中,将组合框的 SelectedIndex 属性 设置为相应的索引。

注意:您还需要将 End Case 更改为 End Select

而不是 hard-coded Select Case,使用 For Loop 查找匹配项,如下所示:

Dim Str As String = "B"
With Frm
    For i As Integer = 0 To cbox.Items.Count - 1
        If cbox.Items(i).ToString.ToUpper.StartsWith(Str.ToUpper) Then
            cbox.SelectedIndex = i
            Exit For
        End If
    Next
End With