FindItemWithText listview clickevent或itemchecked事件

时间:2014-02-18 05:10:04

标签: vb.net listview search

我尝试了这两个事件..但结果总是一样的。我有两个listview(lvMessage和lvContact)

  

lvMessage(第1次lisview - 项目来自sim卡)索引0 |空

     

索引1 |细胞数 - (假设我有{“1234”,“2468”})

     

索引2 |日期和时间

     

索引3 |消息

     

lvContact(2nd listview)

     

索引0 | ID

     

索引1 |姓名 - (假设我有{“Chris”,“Mark”,“Cedric”})

     

索引2 |号码 - (假设我有{“1234”,“2468”})

这是我的代码:

Dim ChkContact As New ListViewItem

            Dim TheText As ListViewItem = Me.lvMessage.Items(0)

            ChkContact = lvContact2.FindItemWithText(TheText.SubItems(1).Text.ToString)
            If ChkContact IsNot Nothing Then
                txtContact.Text = ChkContact.SubItems(1).Text
                lvMessage.FocusedItem.SubItems(0).Text = ChkContact.SubItems(1).Text

            Else
                txtContact.Text = "no match found"
                lvMessage.FocusedItem.SubItems(0).Text = "Not in the list"
            End If

我的第一个listview(lvMessage)中索引(0)的结果是“Chris”

即使我点击或检查其他行,结果总是“Chris”

请帮助..我知道代码在FindItemWith文本中工作,但我想要的结果总是一样......

感谢

1 个答案:

答案 0 :(得分:0)

这是一个疯狂的猜测..

Dim TheText As ListViewItem = Me.lvMessage.Items(0)

此代码将始终选择lvMessage上的第一个Item 这将永远是“克里斯”

TheText.SubItems(1).Text.ToString

试试这个..

 Dim TheText As ListViewItem = Me.lvMessage.SelectedItems(0)

它将获得lvMessage上的第一个选定项目。