Combo box

lylyboop Messages postés 19 Date d'inscription mardi 6 janvier 2009 Statut Membre Dernière intervention 27 mai 2009 - 27 mai 2009 à 15:40
sabeurrr Messages postés 1 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 28 mai 2009 - 28 mai 2009 à 21:59
salut,
j'affiche dans une combo box plusieurs contenant deux valeurs !
comment puisje récupérer une seule de ces valeurs dans une variable ?
merci d'avance

6 réponses

krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
27 mai 2009 à 16:09
Salut

Tu affiches plusieurs... ...contenant deux valeurs. Plusieurs quoi ?

Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -
0
lylyboop Messages postés 19 Date d'inscription mardi 6 janvier 2009 Statut Membre Dernière intervention 27 mai 2009
27 mai 2009 à 16:13
plusieurs données je fais afficher le code et son libellé pour etre plus exact !
désolé je n'avais pas vu l'oubli de mot !
0
krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
27 mai 2009 à 16:44
Si c'est un truc du genre

"123. Libellé"
et que tu souhaites avoir le code, tu peux récupérer juste "123" en faisaint "comboBox1.SelectedText.Split('.')[0]" (et si tu veux convertir ça en int, "Convert.ToInt32(comboBox1.SelectedText.Split('.')[0]);".

Cependant, une autre moyen, c'est de faire une classe perso et de surcharger sa méthode ToString().
class maClassePerso
{
    int Id { get; set; }
    string Libelle { get; set; }

    public maClassePerso(int id, string libelle)
    {
        Id = id;
        Libelle = libelle;
    }

    public override string ToString()
    {
        return Id.ToString() + ". " + Libelle;
    }
}

Ainsi, quand tu ajouteras des objets de type maClassePerso dans ta combobox, ce qu'il affichera ce sera le résultat de la méthode ToString() surchargée, mais cependant, les objets dans la liste seront toujours de type maClassePerso. Tu pourras donc faire :

(comboBox1.SelectedItem as maClassePerso).Id;

Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -
0
lylyboop Messages postés 19 Date d'inscription mardi 6 janvier 2009 Statut Membre Dernière intervention 27 mai 2009
27 mai 2009 à 16:51
merci beaucoup pour ton aide c'est exactement ça que je cherchais
encore merci a toi @+
0

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

Posez votre question
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
28 mai 2009 à 08:30
Moui, celà dit je ferais plutôt un champs à côté que de surcharger ToString.
ToString doit retourner une description de l'objet, c'est pas forcément ce qu'on veut afficher à l'utilisateur.

A voire...

<hr />
-Blog-
-Site Perso-
0
sabeurrr Messages postés 1 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 28 mai 2009
28 mai 2009 à 21:59
salut
je veux comprendre pas a pas l'utilisation des contrôles c# et surtout comment programmer ces évènements .
merci d'avance.
0
Rejoignez-nous