我已经完成了搜索我的列表视图项目,但遗憾的是它只显示了第一个结果而且没有显示任何内容
这是我的代码
Private Sub ULButton1_Click(sender As Object, e As EventArgs) Handles ULButton1.Click
If ComboBox2.Text = "" Then
MessageBox.Show("Please select an office")
Else
Dim itm As ListViewItem
itm = Me.ListView2.FindItemWithText(TextBox1.Text)
If Not itm Is Nothing Then
ListView2.SelectedItems.Clear()
ListView3.Clear()
ListView3.View = View.Details
ListView3.FullRowSelect = True
ListView3.GridLines = True
ListView3.Sorting = SortOrder.Ascending
ListView3.Columns.Add("Username", CInt(ListView1.Width / 2))
ListView3.Columns.Add("Name", CInt(ListView1.Width / 2))
Me.ListView2.Items.Item(itm.Index).Selected = True
For Each itm2 As ListViewItem In Me.ListView2.SelectedItems
Me.ListView3.Items.Add(ListView2.Items(itm2.Index).Clone())
Next
Else
MessageBox.Show("Not Found", "")
End If
itm = Nothing
End If
End Sub
当我在文本框中输入一个字符串时,此代码将在另一个列表视图中显示listview项的结果,有没有一种方法可以修改它以显示我在文本框中输入的字符串的多个相关项?
谢谢
答案 0 :(得分:0)
FindItemWithText仅查找第一个匹配项。 您需要使用另一个表单或该函数来获取起始索引并继续在循环中查找下一个项目。 此外,这个片段看起来很奇怪:
Me.ListView2.Items.Item(itm.Index).Selected = True
For Each itm2 As ListViewItem In Me.ListView2.SelectedItems
Me.ListView3.Items.Add(ListView2.Items(itm2.Index).Clone())
Next
您迭代选定的项目,但您只选择了一个!你已经知道了它的索引......