Recuperer tout les Keys d'une hashtable pour les afficher dans une listbox [Résolu]

Messages postés
146
Date d'inscription
lundi 15 juin 2009
Statut
Membre
Dernière intervention
14 février 2013
- - Dernière réponse : cs_megamario
Messages postés
146
Date d'inscription
lundi 15 juin 2009
Statut
Membre
Dernière intervention
14 février 2013
- 20 janv. 2010 à 22:35
Bonjour,

J'ai un petit souci tout bête que j'arrive pas a résoudre. Quand je dit tout bête c'est que j'y suis arrivé en VB.net mais je bloque en C#.

je voudrais lister toutes les Keys de ma Hashtable et uniquement les Keys pour les lister dans une listebox, afin que l'utilisateur sélectionne celle qui veut pour ensuite interroger les données.

Je ne vois pas pourquoi cela marche pas car si je reprend la même architecture qu'en VB il en veux pas.

Merci de votre aide


Technicien en électricité Industriel (39 ans), en cours de reconversion BTS IRIS 2eme Année.
Au lycée pendant l'année scolaire, et en stage pendant les vacances scolaire.
Afficher la suite 

4 réponses

Meilleure réponse
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
43
3
Merci
Euh, pourquoi pas juste
listBoxNom.DataSource = listeMesures.Keys.Cast<string>().ToList();


au lieu de

ArrayList Liste = new ArrayList();
foreach (string Key in ListeMesures.Keys)
            {
                Liste.Add (Key);
            }
            listBoxNom.DataSource =  Liste;


[hr]
-Site personnel-
-Blog-

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 205 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Bidou
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
43
0
Merci
Salut,
Essayes ceci:

            Hashtable table1 = new Hashtable();
            table1.Add("t1", "t2");
            List<string> keys1 = table1.Keys.Cast<string>().ToList();

            // OU

            IDictionary<string, string> table2 = new Dictionary<string, string>();
            table2.Add("t3", "t4");
            List<string> keys2 = table2.Keys.ToList();


[hr]
-Blog-
-Site Perso-
Commenter la réponse de cs_Bidou
Messages postés
146
Date d'inscription
lundi 15 juin 2009
Statut
Membre
Dernière intervention
14 février 2013
0
Merci
Bonjour,

Merci beaucoup pour cette solution.
J'ai malgré tout réussi a le faire avec un foreach.

            string Supervision;
            ArrayList Liste = new ArrayList();
            Supervision = comboBox1.Text;
            ListeMesures = new Hashtable();
            ListeMesures = GXml.Liste_ObjetMesures("params.xml", Supervision);
            foreach (string Key in ListeMesures.Keys)
            {
                Liste.Add (Key);
            }
            listBoxNom.DataSource =  Liste;


Merci encore, je suis preneur de tout idée et solution.

Technicien en électricité Industriel (39 ans), en cours de reconversion BTS IRIS 2eme Année.
Au lycée pendant l'année scolaire, et en stage pendant les vacances scolaire.
Commenter la réponse de cs_megamario
Messages postés
146
Date d'inscription
lundi 15 juin 2009
Statut
Membre
Dernière intervention
14 février 2013
0
Merci
Bonjour Bidou,

Heuu, ..... je sais pas quoi dire car c'est pas mal du tout.
Je découvre le .net et le C# et je ne connaissait pas ce prototype.


Merci.



Technicien en électricité Industriel (39 ans), en cours de reconversion BTS IRIS 2eme Année.
Au lycée pendant l'année scolaire, et en stage pendant les vacances scolaire.
Commenter la réponse de cs_megamario