Transfere d'une listbox vers une autre

robi17 Messages postés 6 Date d'inscription vendredi 8 février 2008 Statut Membre Dernière intervention 1 décembre 2010 - 18 févr. 2008 à 19:51
Miltiades Messages postés 233 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 25 octobre 2010 - 19 févr. 2008 à 16:24
Bonsoir tout le monde.

Pour commencer, je découvre ce forum, j'ai fais une recherche pour savoir sicette question n'avait pas été posée, à priori c'est pas le cas, car je n'aipas trouvé bonheur.

J'ai un exercice à rendre pour la rentrée scolaire (je suis étudiant en bts ig)et je bloque dessus depuis plusieurs jours maintenant, j'espère que vous pouvezm'éclaire là-dessus.

Tout d'abord la consigne :

Je dois réaliser un programme qui transfère les donnée d'une listbox vers uneautres.

Dans la première question de cette consigne, je dois simplement transférer unseul item de la listbox qui se trouve sur la gauche vers celles qui setrouve sur la droite grâce à un bouton.

Pour ce qui est de cette première question, j'ai compris, mon programmefonctionne parfaitement.
voici mon code pour vous montrez <!--[if gte vml 1]><v:shapetype id= "_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> <v:stroke joinstyle="miter"/> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0"/> <v:f eqn="sum @0 1 0"/> <v:f eqn="sum 0 0 @1"/> <v:f eqn="prod @2 1 2"/> <v:f eqn="prod @3 21600 pixelWidth"/> <v:f eqn="prod @3 21600 pixelHeight"/> <v:f eqn="sum @0 0 1"/> <v:f eqn="prod @6 1 2"/> <v:f eqn="prod @7 21600 pixelWidth"/> <v:f eqn="sum @8 21600 0"/> <v:f eqn="prod @7 21600 pixelHeight"/> <v:f eqn="sum @10 21600 0"/> </v:formulas> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/> <o:lock v:ext="edit" aspectratio="t"/></v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" alt=""> <v:imagedata src="file:///C:\Users\GUILLA~1\AppData\Local\Temp\msohtml1\01\clip_image001.gif" o:href="/imgs2/smile_cool.gif"/></v:shape><![endif]--><!--[if !vml]--><!--[endif]-->

        private void button2_Click(object sender,System.EventArgs e)
        {
            try
            {
               listedroite.Items.Add(listegauche.SelectedItem);
               listegauche.Items.RemoveAt(listegauche.SelectedIndex);
            }
            catch
            {
               MessageBox.Show("Veuillez saisir un item", "Erreur",MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
        }

enfin bref, ça fonctionne <!--[if gte vml 1]><v:shape id="_x0000_i1026" type="#_x0000_t75" alt=""> <v:imagedata src="file:///C:\Users\GUILLA~1\AppData\Local\Temp\msohtml1\01\clip_image002.gif" o:href="/imgs2/smile_tongue.gif"/></v:shape><![endif]--><!--[if !vml]--><!--[endif]-->et c'est nickel

C'est après que je bloque sur la deuxième question de cette même consigne.
Cette fois-ci, je dois transférer toutes les données (tout les items) dela listebox gauche vers celle de droite, toujours grâce à un bouton (button3),sans avoir besoin de sélectionner un item.

J'espère avoir été clair dans ma description, si ce n'est pas la cas, je resteà disposition <!--[if gte vml 1]><v:shape id ="_x0000_i1027" type="#_x0000_t75" alt=""> <v:imagedata src="file:///C:\Users\GUILLA~1\AppData\Local\Temp\msohtml1\01\clip_image001.gif" o:href="/imgs2/smile_cool.gif"/></v:shape><![endif]--><!--[if !vml]--><!--[endif]-->

J espère qu'un personne pourra m'aider
Merci d'avance en tout cas.

Bonne soirée à tous.<!--[if gte vml 1]><v:shape id="_x0000_i1028" type="#_x0000_t75" alt=""> <v:imagedata src="file:///C:\Users\GUILLA~1\AppData\Local\Temp\msohtml1\01\clip_image003.gif" o:href="/imgs2/smile_shy.gif"/></v:shape><![endif]--><!--[if !vml]--><!--[endif]-->

8 réponses

cs_Bidou Messages postés 5486 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
18 févr. 2008 à 20:44
Salut,
Tu peux faire une boucle sur tous les éléments de ta liste avec un foreach.
Dans le foreach, tu feras le add, pour ajouter chacun des éléments dans l'autre liste.
Après la boucle, tu fais un Clear pour vider la liste qui se trouve donc maintenant dans l'autre liste.

<hr />
-My Blog-
1
robi17 Messages postés 6 Date d'inscription vendredi 8 février 2008 Statut Membre Dernière intervention 1 décembre 2010
18 févr. 2008 à 21:26
Merci pour ta réponse, mais en cour, on  a pas encore étudié la propriété foreach . Donc pour le moment, ça me dit pas grand chose
0
cs_Bidou Messages postés 5486 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
18 févr. 2008 à 21:38
Ce n'est pas une propriété, c'est une instruction qui permet de faire une boucle...
http://msdn2.microsoft.com/fr-fr/library/ttw7t8t6(VS.80).aspx

<hr />
-My Blog-
0
robi17 Messages postés 6 Date d'inscription vendredi 8 février 2008 Statut Membre Dernière intervention 1 décembre 2010
18 févr. 2008 à 21:50
Vu que je n'ai pas encore étudié, l'instruction foreach, je préfère faire ce programme, avec mes connaissances actuelles acquises en cours.

Merci vraiment pour ta réponse bidou, mais cela ne m'aide pas trop ;)

Si quelqu'un a une autre solution à me proposer, je suis preneur.

Merci
0

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

Posez votre question
Nikoui Messages postés 794 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 19 août 2008 13
19 févr. 2008 à 11:58
Si je comprend bien, tu n'as pas le droit d'utiliser le foreach... Dans ce cas, est ce que vous avez vu en cours l'instruction "for" ? Ou "while" ? Si oui, alors regarde comment utiliser un 'for' ou un 'while' pour faire ce qu'on te demande (et si tu ne trouves pas, montres nous où tu en es qu'on puisse t'aiguiller). Si la réponse est non aux deux questions, ça se complique...

<hr size="2" width="100%" />
Working as designed
www.nikoui.fr
0
robi17 Messages postés 6 Date d'inscription vendredi 8 février 2008 Statut Membre Dernière intervention 1 décembre 2010
19 févr. 2008 à 15:38
Merci, je vais regarder ce que j'arrive faire avec ces deux structures .

Je vous tiens au courant
0
robi17 Messages postés 6 Date d'inscription vendredi 8 février 2008 Statut Membre Dernière intervention 1 décembre 2010
19 févr. 2008 à 15:44
En fait, je pense pas que cela va poser beaucoup de souci, j'ai de bonne  base, il me manquerais que l exemple du code à utiliser, genre; listedroite.Items.Add(listegauche.SelectedItem);

le meme pour envoyer cette fois ci, toutes les données, vous avez une solution ?
0
Miltiades Messages postés 233 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 25 octobre 2010
19 févr. 2008 à 16:24
en faisant un minimum de recherche, on trouve la solution <!--[if gte vml 1]><v:shapetype
id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t"
path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
<v:stroke joinstyle="miter"/>
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0"/>
<v:f eqn="sum @0 1 0"/>
<v:f eqn="sum 0 0 @1"/>
<v:f eqn="prod @2 1 2"/>
<v:f eqn="prod @3 21600 pixelWidth"/>
<v:f eqn="prod @3 21600 pixelHeight"/>
<v:f eqn="sum @0 0 1"/>
<v:f eqn="prod @6 1 2"/>
<v:f eqn="prod @7 21600 pixelWidth"/>
<v:f eqn="sum @8 21600 0"/>
<v:f eqn="prod @7 21600 pixelHeight"/>
<v:f eqn="sum @10 21600 0"/>
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
<o:lock v:ext="edit" aspectratio="t"/>
</v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" alt="" style='width:11.25pt;
height:11.25pt'>
<v:imagedata src="file:///C:\Temp\msohtml1\01\clip_image001.gif" o:href="http://www.csharpfr.com/imgs2/smile_dead.gif"/>
</v:shape><![endif]--><!--[if !vml]--><!--[endif]-->


premier step de la recherche : http://msdn.microsoft.com/library/fre/default.asp?url=/library/FRE/cpref/html/frlrfsystemwindowsformslistboxclassitemstopic.asp

la même dans <st1:personname productid="la MSDN V" w:st="on">la MSDN V</st1:personname>2
: http://msdn2.microsoft.com/fr-fr/library/system.windows.forms.listbox.items(VS.80).aspx


deuxième step : http://msdn.microsoft.com/library/fre/default.asp?url=/library/FRE/cpref/html/frlrfsystemwindowsformslistboxobjectcollectionmemberstopic.asp

la même dans <st1:personname productid="la MSDN V" w:st="on">la MSDN V</st1:personname>2
: http://msdn2.microsoft.com/fr-fr/library/system.windows.forms.listbox.items(VS.80).aspx


dernier step : http://msdn.microsoft.com/library/fre/default.asp?url=/library/FRE/cpref/html/frlrfsystemwindowsformslistboxobjectcollectionclassaddrangetopic.asp

la même dans <st1:personname productid="la MSDN V" w:st="on">la MSDN V</st1:personname>2
: http://msdn2.microsoft.com/fr-fr/library/system.windows.forms.listbox.objectcollection.addrange(VS.80).aspx


bref, on ne le redira jamais assez... regardez dans <st1:personname productid="la MSDN.." w:st="on">la MSDN..</st1:personname>.




Nul ne devient grand par la guerre...
0
Rejoignez-nous