Bonjour,
Voici un code de recherche , mais qui ne marche que sur la 1ère colonne:
'rechercher texte
Private lastSearch As String
Private lastIndex As Integer = -1
Dim searchText As String = txtSearch.Text.Trim()
Dim lvItem As ListViewItem = Nothing
'ne s'embarrasse pas de recherches vides
If searchText = "" Then
Return
End If
'nettoyer items sélectionnés
If (ListView1.SelectedItems.Count > 0) Then
ListView1.SelectedItems(0).Selected = False
End If
'vérifier si le lastSearch est le même que l'actuel
'Vérifiez également si nous avons atteint le dernier élément
'a la deuxième vérification, lastIndex <listView.Items.Count - 1, fait en sorte de ne pas
'aller au-delà des indices de la listview
'la façon dont elle est maintenant, si nous atteignons le dernier élément de la recherche il va revenir au
'premier point
If searchText = lastSearch And lastIndex < ListView1.Items.Count - 1 Then
'Nous avons besoin de continuer là où nous nous sommes quittés,
' recherche 1 devant où nous l'avons trouvé;», la position du même nom
lvItem = ListView1.FindItemWithText(searchText, False, lastIndex + 1)
Else
'lancer la recherche depuis le début
lvItem = ListView1.FindItemWithText(searchText, False, 0)
End If
lastSearch = searchText
If Not (lvItem Is Nothing) Then
lastIndex = lvItem.Index
ListView1.Focus()
lvItem.Selected = True
ListView1.TopItem = lvItem
End If
Pour plus de détail voir ce programme:
http://www.vbfrance.com/codes/SAUVEGARDER_DERNIERES_MODIFICATIONS_52372.aspx
@+ Le Pivert