Associer objet et variables ?

aurelien2003 Messages postés 14 Date d'inscription dimanche 22 juin 2003 Statut Membre Dernière intervention 28 mai 2008 - 12 janv. 2005 à 17:52
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 - 13 janv. 2005 à 12:45
bonjour,

je m'explique, imaginons que j'ai 3 labels : label1, label2 et label3.

j'ai également un integer i qui varie de 1 à 3

comment faire pour faire ça :

for (i=1;i<3;i++){
label i.Text = i.ToString(); // par exemple
}

en fait associer label (ou autre objet ) avec ma variable i pour eviter de faire manuelement
label1.Text=1;
label2.Text=3;

je ne sais pas si j'ai été clair mais je ne sais pas comment formuler autrement le problème.

Merci à tous pour vos aides précieuse !!

4 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
12 janv. 2005 à 22:48
Malheureusement on peut pas faire ce que tu veux tres facilement. Pour
faire cela il faudrais utiliser faire du CodeDom et/ou de la
reflection. Regarde sur le forum de Csharpfr.com la question avait été
posé ...



Pour contourner ton problème, tu peux mettre tes labels dans un aray, genre



dim a as array = { label1, label2, label3 ]



dim i as integer = 0

for each lbl as object in a

i+=1

ctype(lbl, label).text = i ' en C# essaye directement i++ ca devrait fonctionner

next



Voila

<!--StartFragment -->
<hr>

Cyril - Webmaster de Hoshimi.CodeS-SourceS.fr
0
aurelien2003 Messages postés 14 Date d'inscription dimanche 22 juin 2003 Statut Membre Dernière intervention 28 mai 2008
13 janv. 2005 à 10:01
merci,

je vais essayer de le mettre dans un tableau, j'y avait pensé mais ....

bon je teste

encore merci !
0
aurelien2003 Messages postés 14 Date d'inscription dimanche 22 juin 2003 Statut Membre Dernière intervention 28 mai 2008
13 janv. 2005 à 10:14
donc voilà ta solution qui fonctionne bien en C# :

object[] j = new object[25] {Jour1, Jour2, Jour3,Jour4, Jour5, Jour6, Jour7, Jour8,Jour9, Jour10,Jour11, Jour12, Jour13,Jour14, Jour15,Jour16, Jour17, Jour18,Jour19, Jour20,Jour21, Jour22, Jour23,Jour24, Jour25};


int i=0;


foreach (Label l in j)
{
i++;
l.Text=i.ToString();
}

Donc encore merci !!
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
13 janv. 2005 à 12:45
Je te donne une solution un peu plus complexe mais beaucoup plus joli.



Tu as ajouté tout tes label dans le code html à la suite comme ca

Cyril - Webmaster de Hoshimi.CodeS-SourceS.fr
0
Rejoignez-nous