Deux propriétés dans Combobox

Résolu
cs_wally88 Messages postés 361 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 1 octobre 2010 - 29 avril 2006 à 16:37
cs_wally88 Messages postés 361 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 1 octobre 2010 - 2 mai 2006 à 15:14
 Bonjour je souhaitais savoir comment afficher deux propriété de la base de donnée dans une seule liste deroulante en c#.net si qqun peut m'aider.
Merci.

9 réponses

DjAdes Messages postés 38 Date d'inscription vendredi 31 mai 2002 Statut Membre Dernière intervention 6 juillet 2011
1 mai 2006 à 15:28
Salut,
Je comprends comment tu veux faire mais je ne sais pas bien comment fonctionne la propriété DisplayMember.
J'aurais plutôt fait une boucle qui parcoure toutes les lignes de ta table et qui concatène ce qu'il faut. Comme ceci (à peu près) :

foreach(DataRow ligne in dsSorts.Tables["sorts"].Rows)
{
ListeSorts.Items.Add(ligne["sor_nom"] + " " + ligne["sor_lvl"]);
}

C'est sûrement moins direct que ta façon mais je pense que c'est une solution.
Seb.
3
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
29 avril 2006 à 17:17
Salut,

En dessinant toi même l'item afin de gérer ce comportement.
Voir DrawMode et DrawItem.

/*
coq
MVP Visual C#
*/
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
29 avril 2006 à 17:18
Et MeasureItem.

/*
coq
MVP Visual C#
*/
0
cs_wally88 Messages postés 361 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 1 octobre 2010
30 avril 2006 à 11:55
Coucou c'est gentil de m'avoir mis sur la voie mais à vrai dire j'y comprend rien :/
Tu pourrais pas pousser un peu plus les pistes s'il te plait ? lol.
Merci.
0

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

Posez votre question
DjAdes Messages postés 38 Date d'inscription vendredi 31 mai 2002 Statut Membre Dernière intervention 6 juillet 2011
30 avril 2006 à 18:13
Salut,
Si pour toi propriétés = champs d'une table de ma base de données. Alors pourquoi ne pas concaténer simplement les deux champs (séparés par un espace, un tiret, ...) puis ajouter le résultat à ta liste déroulante ?

Seb.
0
cs_wally88 Messages postés 361 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 1 octobre 2010
30 avril 2006 à 23:16
Bjour, oui afficher deux champs je n'arrive pas a concaténer :

  DataSet dsSorts = charger.ChargerSorts();
            ListeSorts.DataSource = dsSorts.Tables["sorts"];
            ListeSorts.DisplayMember = "sor_nom" + "sor_lvl";

   public DataSet ChargerSorts()
        {
            MySqlConnection sqlCon = new MySqlConnection();
            string ConnnectionStr = "Database=dd;Data Source=localhost;User Id=root;Password=";

            sqlCon.ConnectionString = ConnnectionStr;

            string req = "select * from sorts";

            sqlCon.Open();
            MySqlDataAdapter da = new MySqlDataAdapter(req, sqlCon);

            DataSet ds = new DataSet();
            da.Fill(ds, "sorts");

            return ds;
        }

et sa m'ecris  sa dans la liste deroulante

System.Data.DataRowView
System.Data.DataRowView

Merci
0
cs_wally88 Messages postés 361 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 1 octobre 2010
1 mai 2006 à 16:49
;o) bah ca fonctionne tout bien.
Mais si ma base contient 300ligne ca va pas etre un peu long a charger?
En tout cas merci c'est deja une tres bonne solution pour le moment, car sa m'enervais lol.
0
DjAdes Messages postés 38 Date d'inscription vendredi 31 mai 2002 Statut Membre Dernière intervention 6 juillet 2011
2 mai 2006 à 15:09
Je ne pense pas que 300 lignes vont être difficiles à charger... mais tu auras sûrement un petit temps d'attente quand tu auras 8000 enregistrements dans ta base de données.
Par contre, je ne sais pas si utiliser DisplayMember aurait accélé l'exécution du programme car, en définitive, il doit faire une boucle aussi.

Seb.
0
cs_wally88 Messages postés 361 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 1 octobre 2010
2 mai 2006 à 15:14
Oki bah merci bien pour tout ses renseignement et la de toute facon ca fonctionne a merveille ;o)
Bonne continuation.
0
Rejoignez-nous