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

Résolu
cs_ShayW Messages postés 3253 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 3253 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
A voir également:

6 réponses

cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
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 211
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 211
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 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
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 211
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 211
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
Rejoignez-nous