Quelle type de tableau utiliser pour stocker des objet?

Résolu
Yoteco Messages postés 111 Date d'inscription lundi 20 octobre 2003 Statut Membre Dernière intervention 5 novembre 2008 - 31 août 2005 à 10:44
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 - 31 août 2005 à 11:36
Bonjour,



Je dois stocker une série d'objet dans un tableau puis pouvoir les
resortir et utiliser leurs méthodes et propriétés! Quelle tableau
dois-je utiliser?? Car avec un ArrayList ça ne marche pas :-( , il ne
garde pas les propirétés et ni les méthodes!




Et une côtellette à la bière pour Gérard

7 réponses

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
31 août 2005 à 11:17
un conseil... dans ta classe CMamifère ajoute ceci :

public override ToString() {
return this.nom;
}

et fait ceci :

CMamifère elephant = new CElephant(textBoxNom.Text, Convert.ToInt32(textBoxPoids.Text));
animaux.Add(elephant);
...
...

foreach (CMamifère result in animaux)
{
listBoxMamifere.Items.Add(result);
}

Sébastien FERRAND
3
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
31 août 2005 à 11:36
nan... en Fait le ToString() permet d'afficher le libellé dans la listBox... mais chaque élément de la listBox est en réalité un CMamifère.

donc en faisant : ((CMamifère)listBox.Items[1]).Poids, j'accède au poids du deuxieme mamifère de la liste.

Sébastien FERRAND
3
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
31 août 2005 à 10:54
euh... depuis quand ca me marche pas avec les ArrayList ???
je le fais tous les jours !!!

Toto titi = new Toto();

ArrayList al = new ArrayList();

al.Add(titi);

(Toto)al[0].LaMethodeAToto();

Sébastien FERRAND
0
Yoteco Messages postés 111 Date d'inscription lundi 20 octobre 2003 Statut Membre Dernière intervention 5 novembre 2008
31 août 2005 à 11:10
Ah bon !





Alors je dois faire qqch de faux! Pourrais tu me dire quoi ???





CMamifère elephant = new CElephant(textBoxNom.Text, Convert.ToInt32(textBoxPoids.Text));


animaux.Add(elephant);




je fais ceci avec plusieurs valeurs différentes...




puis j'aimerais entrer les différents noms des animaux dans une liste box:




foreach (object result in animaux)

            {

                listBoxMamifere.Items.Add((CMamifère)result.nom);

            }






Et une côtellette à la bière pour Gérard
0

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

Posez votre question
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
31 août 2005 à 11:18
ooops... une erreur :
public override string ToString() {
return this.nom;
}

Sébastien FERRAND
0
Yoteco Messages postés 111 Date d'inscription lundi 20 octobre 2003 Statut Membre Dernière intervention 5 novembre 2008
31 août 2005 à 11:22
Mais je dois reprendre plusieur valeur, la race et le poids également! alors je dois faire une fonction pour chaque valeur ???

Et une côtellette à la bière pour Gérard
0
Yoteco Messages postés 111 Date d'inscription lundi 20 octobre 2003 Statut Membre Dernière intervention 5 novembre 2008
31 août 2005 à 11:32
Ah c'est bon pas besoin de répondre j'ai compris! Merci beaucoup c'est sympa ;-)

Et une côtellette à la bière pour Gérard
0
Rejoignez-nous