IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Combobox Items =+ values


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Par défaut Combobox Items =+ values
    Bonjour à tous.

    Je débute sous visual studio 2008.

    J'ai créé un combobox dans lequel j'ai mis ( via l'interface graphique ), mes choix possible du combobox.
    Cependant j'aimerais bien,pour chaque choix rentré avoir une valeur.

    Par exemple : si dans mon combobox j'ai : Fiat, BMW,Renault.
    J'aimerais associé une valeur Fiat = 0 , BMW = 1 , Renault = 2.

    Merci de votre aide

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    dans ce cas il ne faut remplir le combobox via l'interface mais par code

    soit en créant une classe avec un id et un nom et en disant au combobox qu'il doit afficher la propriété nom (displaymember)
    soit en créant une enum et en mettant les valeurs de l'enum dans le combobox (for each de system.enum.getvalues)

    la première solution est mieux si tu veux mettre plus d'infos dans la classe (même si ce n'est que sur une prochaine version)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Par défaut
    oki, mais peux tu me donner un exemple de code ?

  4. #4
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    1ère solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    public class MarqueVoiture
    {
    	public long Id { get; set; }
    	public string Nom { get; set; }
    }
     
     
    private void RempliCombobox()
    {
    	this.CBXMarque.DisplayMember = "Nom";
    	foreach (MarqueVoiture mv in MaCollectionDeMarques) {
    		this.CBXMarque.Items.Add(mv);
    	}

    }

    2ème solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    public enum Marques
    {
    	Fiat = 0,
    	Renault = 1
    	//etc...
    }
     
    private void RempliCombox()
    {
    	foreach (object v_loopVariable in System.Enum.GetValues(typeof(Marques))) {
    		v = v_loopVariable;
    		this.CBXMarque.Items.Add(v);
    	}
    }




    si tu as une base de données, tu ne vas pas t'amuser à faire une enum qui serait un doublon de la base, et donc utiliser le système de classe dont tu chargerais des instances dans une collection à partir des données de la base
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 17
    Par défaut
    Bonjour,

    Crée une liste d'objet (id, libelle) et ajoute la dans la datasource de ton combobox.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    myComboBox.DataSource = maListe;
    n'oublie pas de faire le binding avant.

    Voilà

    P.S. Avec le binding entre ta liste d'objets et ton combo box, la manipulation devient tres facile.

    Je te conseil de le faire.

Discussions similaires

  1. VB.NET 2005 : combobox.items.contains
    Par Kropernic dans le forum Windows Forms
    Réponses: 5
    Dernier message: 14/04/2009, 11h29
  2. ComboBox DataSource Value
    Par Thesum dans le forum VB.NET
    Réponses: 3
    Dernier message: 14/03/2008, 16h16
  3. probleme affichage combobox item selectionne
    Par nicocotiers dans le forum Flash
    Réponses: 5
    Dernier message: 16/10/2006, 11h36
  4. [C#] combobox et value c# comme en html possible ?
    Par korben06 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 25/07/2006, 01h16
  5. [c#]ComboBox Display / Value Member
    Par Derik dans le forum Windows Forms
    Réponses: 2
    Dernier message: 12/03/2006, 02h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo