foreach (var item in collection) { Instructions .. .. }
Explication des lements de boucle foreach la place de Collection : peut tre un variable (tableau) ou un objet(listbox, richetexbox, groupbox) ect Lssenciel que la place de collection en doit mettre un variable ou un objet qui contient des element par exemple (tableau dentier est contient des nombre , groupbox est contient des objet , richetexbox est contient des carracters)
Explication des lements de boucle foreach la place d item : on choisir un nom significatif qui jeu le role dun element de la collection dans la boucle foreach , chaque tour de boucle le contenu de item change sans utilise un conteur In : le mot cl in ne change pas il signifier que item est un lement dans la collection la place de Var : on mettre le type de litem ou le nom dun objet qui prend item Exemple 1 KIKE foreach (morceau elem in kike. morceaux) { couper un (elem) ; Donner (elem) un enfant ; } /*1re tour : elem remplace par le premier morceau , on couper et donne le 1re mourceau a un enfant ect jusqu a la dernier morceau La boucle tourne 4 fois car ila 4 morceau*/
Exemple 2 double[] notes={ 16.5 , 10.5 , 12 , 10 , 20 , 5.5 , 9.5}; //affichage dun tableau on utilisant boucle for For(i=0;i<notes.lenght;i++) // note.lenght est la taile de tableau (7) { Console.Write(notes[i]); } //affichage dun tableau on utilisant boucle foreach foreach (double note_etuduant in notes) { Console.Write(note_etuduant ); } /* notes est un tableau de 7 nombre danc la bouckle foreach tourne 7 fois chaque tour note_etuduant prend une valeur diffirent Au dpart =16,5 donc on affiche 16,5 au 2me tour note_etuduant=10,5 et affiche le contenu de note_etuduant qui sera 10,5 etc jusqua la 7 tour note_etuduant=9,5 et on affiche le contenu de note_etuduant 9,5) Exemple 3 : vider tout les texbox de cet exemple foreach (Control elem in Controls) { if (elem is TextBox) { elem.Text = ""; } } /*controls cest tous les objet de cet form(5 texbox et un button ) et control cest le type de elem qui est un un seul objet qui remplace chaque tour par un outil diffirent (tour 1 : elem remplace par texbox1 et on a un test dans ce cas elem est vrement un texbox (elem=texbox1) alors (texbox1.Text=""; ) , tour 2 : elem remplace par texbox2 et on a un test dans ce cas elem est vrement un texbox (elem=texbox2) alors (texbox2.Text=""; ), , tour 6: elem remplace par button1 et on a un test dans ce cas elem est un button donc on fait rien et sela la boucle terminee ) Exemple 4 : foreach (Texbox elem in groupBox1.Controls) { elem.Text = ""; } /*lobjectif c est vider touts les texbox mais cet fois on a les texbox dans le grupbox alors on doit mettre au place de la collection le nom de groupbox mais doit mettre apres le nom de groupbox (.controls) car ici on parle a les outil qui sans dans le groupbox ( comme dan lexemple N 1 on ecrire kike.morceaux , on mettre avant elem (Texbox) car on a seulemrnt les texbox danc chaque tour elem est un texbox different , si on a dautre control dans groupbox come les label alors le code doit tre comme a*/ foreach (Control elem in groupBox1.Controls) { if (elem is TextBox) { elem.Text = ""; } } /* on a changer Texbox par control car on a des objet different danc dans la boucle on fait un test est chaque tour de la boucle elem change et si elem remplace par un texbox le code (elem.Text = ""; ) est fais et les texbox vider sinon si elem est un button ou un label la boucle continue jusqu la fin de boucle)*/
Exemple 5 : copier ts les element de la listbox1 la listbox2 foreach (string jour in listBox1.Items) { listBox2.Items.Add(jour); } La boucle fait 7 tour car on a 7 lemens dans la listbox1 /* au 1re tour jour remplace par lundi donc lundi sera copier dans listbox2 (listBox2.Items.Add(lundi); au 2me tour jour remplace par mardi donc mardi sera copier dans listbox2 (listBox2.Items.Add(mardi); .. au 7me tour jour remplace par dimanche donc dimanche sera copier dans listbox2 (listBox2.Items.Add(dimanche); La boucle termine*/