Supprimer les items qui existe dans deux ListView [Résolu]

Karin.code 183 Messages postés vendredi 2 septembre 2016Date d'inscription 16 janvier 2018 Dernière intervention - 8 déc. 2016 à 10:29 - Dernière réponse : Karin.code 183 Messages postés vendredi 2 septembre 2016Date d'inscription 16 janvier 2018 Dernière intervention
- 8 déc. 2016 à 12:35
Bonjour

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
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
cs_Le Pivert 5188 Messages postés jeudi 13 septembre 2007Date d'inscriptionContributeurStatut 25 juin 2018 Dernière intervention - 8 déc. 2016 à 12:02
1
Merci
Voilà:

  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

Merci cs_Le Pivert 1

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 121 internautes ce mois-ci

Karin.code 183 Messages postés vendredi 2 septembre 2016Date d'inscription 16 janvier 2018 Dernière intervention - 8 déc. 2016 à 12:35
Merci beaucoup cs_Le Pivert le problème est résolu
Commenter la réponse de cs_Le Pivert
cs_Le Pivert 5188 Messages postés jeudi 13 septembre 2007Date d'inscriptionContributeurStatut 25 juin 2018 Dernière intervention - 8 déc. 2016 à 10:44
0
Merci
Bonjour,

Tu trouveras tout ce dont tu as besoin ici:

http://codes-sources.commentcamarche.net/source/101479-comparer-2-repertoires
Karin.code 183 Messages postés vendredi 2 septembre 2016Date d'inscription 16 janvier 2018 Dernière intervention - 8 déc. 2016 à 11:14
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
Commenter la réponse de cs_Le Pivert

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.