因此,我认为您要做的是将用户放入文本框中的输入与 ListBoxA 或 ListBoxB 中的选择相匹配。我刚刚在 VS 2012 中尝试过,它似乎以上述问题描述的方式工作,但我只是想查找并显示运费:
Private Sub btnExit_Click(ByVal sender As Object, ByVal e As System.EventArgs) 处理 btnExit.Click Me.Close() End Sub
Private Sub ListBox1_Load(sender As Object, e As EventArgs) Handles Me.Load
ListBox1.Items.Add("60611")
ListBox1.Items.Add("60234")
ListBox1.Items.Add("56789")
ListBox1.Items.Add("23467")
ListBox1.Items.Add("60543")
ListBox1.Items.Add("60561")
ListBox1.Items.Add("55905")
ListBox1.Items.Add("89567")
ListBox2.Items.Add("50978")
ListBox2.Items.Add("78432")
ListBox2.Items.Add("98432")
ListBox2.Items.Add("97654")
ListBox2.Items.Add("20245")
End Sub
Private Sub btnFind_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnFind.Click
Dim zipCode As String = txtZipCode.Text
If (ListBox1.FindString(zipCode) >= 0) Then
txtShipping.Text = "$15"
ElseIf (ListBox2.FindString(zipCode) >= 0) Then
txtShipping.Text = "$20"
Else
MessageBox.Show("The zipcode was not found!")
End If
End Sub
你走在正确的轨道上。您需要做的是将用户实际输入到文本框的内容与列表框中的可用内容进行比较。FindItem() 方法将产生一个 Long。如果它确实找到了您的搜索字符串,它将构建运输文本框。