Suprimer un élement d'une list of sans affecter une autre list

Résolu
cs_ShayW
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
- 11 avril 2013 à 16:20
cs_ShayW
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
- 11 avril 2013 à 21:04
Bonjour à tous

J'ai deux list d'integer
une que j'ajoute des nombres
l'autre list est une copie de la premiere
le problème est si je supprime un élement
d'une liste l'autre list est affecté
Dim list1, list2 As New List(Of Integer)
        For i = 0 To 12
            list1.Add(i)
        Next
        list2 = list1
        list2.RemoveAt(4)

Merci d'avance

6 réponses

cs_ShayW
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
56
11 avril 2013 à 21:04
oui c'est ça
list2.AddRange(list1)
3
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
237
11 avril 2013 à 16:39
Bonjour,
Ne dis pas que list2 = list1, dans ce cas, car alors il considèrera que chaque fois que du dis list2, tu dis list1.
Ajoute plutôt aux deux listes à la fois dans ta boucle For


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
237
11 avril 2013 à 17:11
Je crois par ailleurs comprendre que VB.Net permet d'alimenter un array à partir d'une listbox, genre :
Dim toto()
ReDim toto(ListBox1.Items.Count - 1)
ListBox1.Items.CopyTo(toto, 0)

Et je crois également comprendre que l'on peut passer d'un tableau à une listbox, genre
Listbox2.Items.AddRange(toto)

A vérifier, car je ne suis pas VB.Nettiste.
Ceci : pour le cas où tu voudrais faire autrement qu'alimenter les deux listboxes dans ta boucle for
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
cs_ShayW
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
56
11 avril 2013 à 17:41
Bonjour
ce n'est pas une listbox mais une liste génerique

une simple boucle for pour copier chaque élement
un par un
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
237
11 avril 2013 à 17:57
Mes "lectures" me conduisent à du Kif au même, que ce soient des lists ou des Listboxes.
Pourquoi une boucle ?
Que ferait ceci :

Dim List2 As New List(Of String ... ou Of autre... c'est toi qui sais...)(List1)
List2.AddRange(List1)

A corriger au besoin, mais ne devrait pas être très loin.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
237
11 avril 2013 à 17:58
Pardon ^^^>> dernière ligne === >> List2.AddRange(List 2 )


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0