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 valeur initiale


Sujet :

C#

  1. #1
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut ComboBox valeur initiale
    Bonjour,

    J'ai toujours du mal avec les combobox

    J'utilise un combobox que j'ai remplis (par query) avec une liste de codes postaux


    J'aimerais afficher ce combo en selectionnant initialement une valeur venant d'un DGV (le code postal de l'adresse choisie par l'utilisateur)

    Exemple le code postal 2000 qui existe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SelectedValue="2000";         // insulte
    SelectedValue=2000 ;           // insulte
    "Cannot set the SelectedValue in a ListControl with an empty ValueMember."

    Meme chose

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SelectedIndex=2000; // Ok mais ce n'est pas ca que je cherche car je veux afficher la valeur, Je ne connais pas l'index du CP 2000 !!
    Suis-je obligé de parcourir le combo pour connaitre l'index de la valeur a afficher ?
    A quoi sert SelectedText et Value ?
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Il faut que tu passes par l'index de la valeur dans la combobox

  3. #3
    Membre éclairé Avatar de ppphil
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 612
    Points : 685
    Points
    685
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cb.SelectedIndex = cb.Items.IndexOf("mavaleur");

  4. #4
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut Marche pas
    A mon avis j'ai encore pas capté un truc

    L'exemple suivant me rends -1 sur cmb_post.Items.IndexOf(2000);
    idem si je fais cmb_post.Items.IndexOf("2000");

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
         string selectcmd = "SELECT PostCode FROM `address` group by PostCode ";
          adaCP.SelectCommand = new MySqlCommand(selectcmd, MyConn.conn);
          adaCP.Fill(dsCP);
          cmb_post.DataSource = dsCP.Tables[0];
          cmb_post.DisplayMember = dsCP.Tables[0].Columns[0].Caption;
          cmb_post.Visible = true;
          cmb_post.SelectedIndex=cmb_post.Items.IndexOf(2000);
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  5. #5
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut Et voila la solution
    Et voila enfin la solution trouvée sur Code Project

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    string selectcmd = "SELECT PostCode FROM `address` group by PostCode ";
    adaCP.SelectCommand = new MySqlCommand(selectcmd, MyConn.conn);
    adaCP.Fill(dsCP);
    cmb_post.DataSource = dsCP.Tables[0];
     
    // bind value member of combobox to datatable
    cmb_post.ValueMember = dsCP.Tables[0].Columns[0].ColumnName; 
    cmb_post.DisplayMember = dsCP.Tables[0].Columns[0].ColumnName;
     
    // select item
    cmb_post.SelectedValue = 2000;
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

Discussions similaires

  1. html checkbox : valeur initiale
    Par vny dans le forum Struts 1
    Réponses: 3
    Dernier message: 06/02/2007, 14h14
  2. Réponses: 2
    Dernier message: 04/01/2007, 13h31
  3. champ de texte et valeur initiale
    Par friiitz dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 05/06/2006, 11h14
  4. [MySQL] select et valeur initiale
    Par dleu dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 18/11/2005, 22h16
  5. [JOptionPane.showInputDialog] Valeur initiale + titre
    Par yanndublanche dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 03/08/2005, 14h43

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