检查列表框是否包含文本框

时间:2013-09-28 09:35:57

标签: vb.net string textbox listbox contains

我知道我可以使用.FindString,但由于某种原因它无效。

基本上,如果列表框项只包含文本框文本的一部分,则会执行操作。

以下是无法工作代码的示例:

Dim x As Integer = -1
        x = ListBox1.FindString(TextBox1.Text)
        If x > -1 Then
            'dont add
            ListBox2.Items.Add("String found at " & x.ToString)
        Else

        End If

1 个答案:

答案 0 :(得分:3)

FindString方法返回以搜索字符串(MSDN)开头的第一个项目。如果您想匹配整个项目,则必须使用FindStringExactMSDN)。如果要执行更复杂的搜索,则必须遍历ListBox中的所有元素。

更新: 代码提供OP所期望的确切功能。

For i As Integer = 0 To ListBox1.Items.Count - 1
    If (ListBox1.Items(i).ToString.Contains(TextBox1.Text)) Then
        ListBox2.Items.Add("String found at " & (i + 1).ToString) 'Indexing is zero-based
        Exit For
    End If
Next