Recuperer tout les Keys d'une hashtable pour les afficher dans une listbox

Résolu
cs_megamario Messages postés 145 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 14 février 2013 - 19 janv. 2010 à 07:06
cs_megamario Messages postés 145 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.

4 réponses

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
19 janv. 2010 à 20:53
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-
3
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
19 janv. 2010 à 08:44
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-
0
cs_megamario Messages postés 145 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 14 février 2013
19 janv. 2010 à 18:47
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.
0
cs_megamario Messages postés 145 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 14 février 2013
20 janv. 2010 à 22:35
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.
0
Rejoignez-nous