Je sollicite votre aide pour le problème suivant
J'ai deux ListView (ListView1 et ListView2) qui sont rempli automatiquement
Je veux en cliquant sur un bouton, une vérification sera lancer :
Si des items existes dans la ListView1 et dans la ListView2 alors ils seront supprimés de la ListView1
J'ai essayé le code suivant :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click For I As Integer = ListView1.Items.Count - 1 To 0 Step -1 If ListView2.ToString.Contains(ListView1.Items(I).Text) Then ListView1.Items.RemoveAt(I) End If Next End Sub
Mais ça ne supprime que le premier item qui existe dans les deux ListView
en faite j'ai posé par le passé un sujet similaire (entre un tableau et une Listview mais j'arrive pas à l'appliquer à ce problème).
Merci pour tout aide
Try
For A = 0 To ListView1.Items.Count - 1
For B = 0 To ListView1.Items.Count - 1
If ListView1.Items(A).Text = ListView2.Items(B).Text Then
ListView1.Items.RemoveAt(A)
End If
Next
Next
Catch
End Try
Bonjour cs_Le Pivert,
merci pour ta réponse rapide
Avant que tu me répondre je venais tout juste de me souvenir de ce projet qui compare deux répertoires affichés dans deux ListView, que j'ai télécharger il y a longtemps et qui m'a beaucoup plu
désolé mais je n'arrive pas à savoir comment ça fonctionne
j'ai relevé la partie que je veux (enfin je crois):
Dim d1 As New DirectoryInfo(Lbl_source.Text) Dim d2 As New DirectoryInfo(Lblcible.Text) Dim aInfos() As DirectoryInfo = d1.GetDirectories Dim bInfos() As DirectoryInfo = d2.GetDirectories Dim dupNames = From a In aInfos Join b In bInfos On a.Name Equals b.Name Select a.Name For Each dup As String In dupNames Dim itemA As ListViewItem = ListView1.Items(dup) Dim itemB As ListViewItem = ListView2.Items(dup) Dim infoA As FileInfo = CType(itemA.Tag, FileInfo) Dim infoB As FileInfo = CType(itemB.Tag, FileInfo) If infoA.Length <> infoB.Length OrElse infoA.LastWriteTime <> infoB.LastWriteTime Then itemB.ForeColor = Color.Blue End If Next Catch ex As Exception MessageBox.Show(ex.Message, "Comparer 2 répertoires", MessageBoxButtons.OK, MessageBoxIcon.Information) End Try
mais comme il utilise File.Name (Répertoire et Fichiers) je ne sais pas comment l'utiliser
8 déc. 2016 à 12:35