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

Windows Forms Discussion :

[C#][debutant] Liste déroulante 2 colonnes cachées


Sujet :

Windows Forms

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 54
    Par défaut [C#][debutant] Liste déroulante 2 colonnes cachées
    Bonjour à tous!!!

    Je débute sous VS (2003 - c#) et je cherche à creer une DropDownList (jusque la... pas de problèmes quand meme )
    Mais je souhaiterai qu'elle contienne 2 champs (id et libellé) mais n'affiche que le libellé.

    J'ai besoin de l'identifiant pour les traitements qui suivent.

    Je n'arrive pas à trouver ou l'on peut déterminer le nombre de colonnes de la liste (encore moins comment on peut la cachée):S:S

    Je suis désolée si la question vous parait triviale!

    Merci d'avance pour toute piste..

    Vavou

  2. #2
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    Avant d'aller plus loin, ton identifiant et ton libellé proviennent d'une source de données (base de données par exemple) ou bien sont ils "codés" en dur ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 54
    Par défaut
    Citation Envoyé par StormimOn
    Avant d'aller plus loin, ton identifiant et ton libellé proviennent d'une source de données (base de données par exemple) ou bien sont ils "codés" en dur ?
    Ils proviennent d'une BD...Désolée pour l'imprécision

  4. #4
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    Tu as configuré une DataSource dans ton projet ? Tu peux assigner une DataSource à ta DropDownList et tu as à ta disposition les propriétés DisplayMember (qui correspond à l'affichage) et ValueMember (qui correspond à la valeur que l'on récupère) qui répondent ainsi parfaitement à ton besoin.

    Par contre, je ne sais plus si sous VS2003 on peut créer la DataSource depuis la propriété DataSource d'une ComboBox.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 54
    Par défaut
    Citation Envoyé par StormimOn
    Tu as configuré une DataSource dans ton projet ? Tu peux assigner une DataSource à ta DropDownList et tu as à ta disposition les propriétés DisplayMember (qui correspond à l'affichage) et ValueMember (qui correspond à la valeur que l'on récupère) qui répondent ainsi parfaitement à ton besoin.

    Par contre, je ne sais plus si sous VS2003 on peut créer la DataSource depuis la propriété DataSource d'une ComboBox.
    Non, effectivement, je n'ai pas affecté ma liste à une data source. Je vais petu etre commencer par la...

    En fait j'ai une procedure qui au chargement de la page appelle une procedure stockée qui doit remplir la liste....

  6. #6
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    Ok, donc le chargement des données existe déjà. A ce moment on peut utiliser une autre voie si tu préfères conserver l'existant.

    Tu peux utiliser une classe Item que voici
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    private class Item
    {
        int _value;
        string _wording;
     
        public Item(int value, string wording)
        {
            _value = value;
            _wording = wording;
        }
     
        public int Value
        {
            get
            {
                return _value;
            }
        }
     
        public string Wording
        {
            get
            {
                return _wording;
            }
        }
    }
    Ensuite, tu utilises le retour de ta procédure stockée pour créer une liste d'Item (un Item par entrée dans la ComboBox) que l'on appellera ItemsList et initialiser le contenu de la ComboBox ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    this.comboBox1.ValueMember = "Value";
    this.comboBox1.DisplayMember = "Wording";
    this.comboBox1.Items.AddRange(ItemsList);
    Tu peux aussi boucler sur le retour et ajouter les Item un à un, ca dépend des préférences de chacun ^^
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    this.comboBox1.ValueMember = "Value";
    this.comboBox1.DisplayMember = "Wording";
    // Pour chaque item à ajouter à la ComboBox
    this.comboBox1.Items.Add(new Item(..., ...));

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. pb avec liste déroulante à 2 colonnes visibles
    Par moicats dans le forum Access
    Réponses: 2
    Dernier message: 20/04/2006, 10h38
  2. Liste déroulante avec identifiant "caché"
    Par critok dans le forum Composants
    Réponses: 9
    Dernier message: 05/12/2005, 22h04
  3. Réponses: 4
    Dernier message: 23/09/2005, 13h29
  4. [debutant] liste déroulante
    Par zozolh2 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 07/06/2005, 15h59
  5. (debutant) liste déroulante
    Par bachilbouzouk dans le forum ASP
    Réponses: 47
    Dernier message: 16/04/2005, 00h54

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