Récupérer la valeur sélectionnée d'une combobox

Résolu
typhon24 Messages postés 13 Date d'inscription vendredi 3 mars 2006 Statut Membre Dernière intervention 19 septembre 2011 - 17 mai 2008 à 15:27
 ze - 31 déc. 2015 à 21:48
Bonjour à tous

J'ai une combobox qui contient une liste de nom  d'entreprise et je voudrai récupérer la valeur sélectionnée afin de la traiter par la suite.
Il faut savoir que ma combobox récupère ses données d'un datasource et ne sont pas rentrées manuellement.

Voila merci de votre aide

7 réponses

olibara Messages postés 666 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 11 mars 2010 6
17 mai 2008 à 18:50
essaye

cmb.SelectedValue
ou
cmb.SelectedItem
Selon que tu veux traiter la valeur ou l'objet
2
Merci énormément Ca a marche
0
typhon24 Messages postés 13 Date d'inscription vendredi 3 mars 2006 Statut Membre Dernière intervention 19 septembre 2011 3
18 mai 2008 à 16:00
j'ai essayé le selectedItem. Voici le test que je fais :

string nom_entreprise = cbListeEntreprise.SelectedItem.ToString();
MessageBox.Show(nom_entreprise);
Mais sa marche pas, il m'affiche Sys.Data.DataRowView dans ma messagebox

J'ai fait la meme chose avec selectedValue mais sa me donne la meme chose.
pas d'autres solutions ?
1
olibara Messages postés 666 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 11 mars 2010 6
18 mai 2008 à 16:21
Et dans ton Combo lui meme ..

Que vois tu  ?
Quel datasource utilise tu ?
0
typhon24 Messages postés 13 Date d'inscription vendredi 3 mars 2006 Statut Membre Dernière intervention 19 septembre 2011 3
18 mai 2008 à 17:06
Je veux récupérer la valeur sélectionnée dans une variable.
Je vois pas ce que tu veux dire quand tu dis "

Et dans ton Combo lui meme" ??
0

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

Posez votre question
olibara Messages postés 666 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 11 mars 2010 6
18 mai 2008 à 17:16
Tu veux une solution mais sans expliquer exactement ce que tu fais ni le resultat que tu obtiens

Ton combo :
Tu lui a donné une datasource ?
Donc a priori j'espère a l'ecran tu vois bien les valeurs que tu souhaite (Pomme, poire caramel etc )
Ou bien vois tu une liste Sys.Data.DataRowView ?

Peux tu montrer le code que tu a employé pour donner le datasource a ton combobox ou c'est TOP secret ?
0
typhon24 Messages postés 13 Date d'inscription vendredi 3 mars 2006 Statut Membre Dernière intervention 19 septembre 2011 3
18 mai 2008 à 17:38
ah ok désolé !

J'utilise une base sql serveur compact. Je possède 4 tables dont l'une s'appelle Clients et elle conntient un champs nom_entreprise.
Ma combobox est binder avec cette table et ce champ nom_entreprise. Donc pour le moment, lorsque j'execute mon programme, j'ai dans ma combobox la liste des entreprises.
Pour le moment, ya pas de code. Ensuite, pour tester si je récupère la bonne valeur, j'ai mis un bouton et lorsque je clique dessus je voudrai que ma messagebox affiche lentreprise que j'ai sélectionné dans ma combobox. Donc j'ai testé sa mais la valeur retourné est System.Data.DataRowView

private void button2_Click(object sender, EventArgs e)
{
            string nom_entreprise = cbListeEntreprise.SelectedValue.ToString();
            MessageBox.Show(nom_entreprise);
}

private void button2_Click(object sender, EventArgs e)
{
            string nom_entreprise = cbListeEntreprise.SelectedItem.ToString();
            MessageBox.Show(nom_entreprise);
}

Voila j'espère avoir été plus précis.
En tout cas merci de ton aide olibara
0
olibara Messages postés 666 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 11 mars 2010 6
18 mai 2008 à 18:03
Ne connaissant toujours pas le contenu exact de ta table ni comment tu as fais le bind, je ne peux toujous pas dire s'il te manque qq chose
Toutefois voici un exemple qui pourrait t'aider
Je fais un select qui me retourne une table contenant 3 elements
J'utilise cette table pour remplit 3 combobox (voir code dans setgeo)

Ensuite j'utilise le DatarowView doné par le selected Items pour recuperer la valeur de l'element qui m'intéresse

    // **************************************************************************************************
    private void SetGeo()
    {
      Query qr = new Query();
      string SelectCmd = "SELECT distinct PostCode,Plaats,Regio FROM address ORDER BY Regio,Plaats,PostCode";


      DataTable dt = qr.selectX(SelectCmd);


      if (dt.Rows.Count == 0)
      {
        return;
      }
      cmb_Plaats.DataSource = dt;
      cmb_Plaats.DisplayMember = dt.Columns["Plaats"].Caption;
      cmb_Regio.DataSource = dt;
      cmb_Regio.DisplayMember = dt.Columns["Regio"].Caption;
      cmb_PostCode.DataSource = dt;
      cmb_PostCode.DisplayMember = dt.Columns["PostCode"].Caption;
    }

          DataRowView cZone = (DataRowView) cmb_Regio.SelectedItem;
          zone = cZone["Regio"].ToString();
0
Rejoignez-nous