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 to ArrayList


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2008
    Messages : 133
    Par défaut ComboBox to ArrayList
    Bonjour,

    Je suis débutant en C# et je suis coincé sur un problème depuis pas mal de temps. Comment est-ce que je peux faire pour récupérer tous les éléments de ma combobox(Value, Key) dans un ArrayList...

    J'ai essayé pas mal de solutions trouvées sur le web,(cast en plusieurs type) mais rien ne fonctionne...

    Voci mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    foreach (DataGridViewRow dgrv in cb.Items)
    {
    ItemsList.Add(new AddItems((string)dgrv.Cells["Value"].Value, (decimal)dgrv.Cells["Key"].Value));
     vp++;
    }
    Est-ce que quellqu'un aurais déjà eu se problème et l'aurait réglé?

    Merci de votre aide.

  2. #2
    Membre Expert

    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2007
    Messages
    3 530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 530
    Par défaut
    Pourrais-tu préciser un peu mieux ?

    Tu évoques une combobox alors que ton foreach itère sur des DataGridViewRow qui sont relatifs aux DataGridView.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2008
    Messages : 133
    Par défaut
    Désolé mon code ne veux rien dire, c'est juste que la seule solution que j'avais trouvée pour le moment, était de caster ma Combobox en datagridviewrow pour pouvoir accèder au cellules, et faire un foreach dessus, mais ça ne marche pas évidemment.

  4. #4
    Membre Expert

    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2007
    Messages
    3 530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 530
    Par défaut
    Si tu utilises une combobox, chaque élément est un objet.

    Tu dois donc ajouter des objets et récupérer des objets en sachant que ce qui sera affiché comme texte dans la combo sera ce qui est renvoyé par ToString() que tu devras surcharger.

    Il te faut caster chaque élément dans le type d'objet que tu veux retrouver et récupérer les valeurs qui t'intéressent.

    Exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
            public Form1()
            {
                InitializeComponent();
     
                cb.Items.Add(new Personne(25, "Pierre"));
                cb.Items.Add(new Personne(32, "Jean"));
     
                foreach (Personne personne in cb.Items)
                {
                    MessageBox.Show(personne.Nom);
                }
     
            }
        }
     
        class Personne
        {
     
            public int Age { get; set; }
            public string Nom { get; set; }
     
            public Personne(int age, string nom)
            {
                Age = age;
                Nom = nom;
            }
     
            public override string ToString()
            {
                return Nom;
            }
        }

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2008
    Messages : 133
    Par défaut
    ça marche.........

    Merci tu m'a fait éviter de heures de recherche.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Multi-selection dans une ComboBox ?
    Par Moloko dans le forum MFC
    Réponses: 5
    Dernier message: 07/07/2021, 17h26
  2. ArrayList<Object> + Combobox
    Par Aleatoire88 dans le forum Collection et Stream
    Réponses: 8
    Dernier message: 24/01/2013, 15h54
  3. Combobox liée a un ArrayList
    Par Yoshio dans le forum Windows Forms
    Réponses: 9
    Dernier message: 29/01/2008, 19h27
  4. [VB.NET][ComboBox] Pb Affichage d'après ArrayList
    Par mainecoon dans le forum Windows Forms
    Réponses: 2
    Dernier message: 08/11/2006, 08h49
  5. [VB.net 2005]ComboBox.DataSource ignore l'ArrayList source
    Par Macintoc dans le forum Windows Forms
    Réponses: 1
    Dernier message: 22/08/2006, 19h31

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