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

Windows Forms Discussion :

Probleme gestion d'une combobox dans un datagridview


Sujet :

Windows Forms

  1. #1
    Membre régulier
    Inscrit en
    Mai 2009
    Messages
    217
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 217
    Points : 103
    Points
    103
    Par défaut Probleme gestion d'une combobox dans un datagridview
    Bonjour à tous,

    Je débute en C# depuis 3 petits mois...Je développe sous une base de données Sql Server 2008. J'ai un formulaire avec un DataGridView que je rempli par mon code de la façon suivante :

    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
    34
    35
     
     
     
    //Efface la liste
    cUtil.ReinitDataGrid(dgvListe);
     
    string sRequete = string.Format("dbo.PSS_SAISIE_INDICATEUR'");
     
                try
                {
                    cConnexion.OpenConnexion(cGlobal.ChaineConnexion, ref sqlCnx);
                }
                catch (Exception ex)
                {
                    cUtil.MessageBoxErreur(ex.Message);
                    return;
                }
                SqlDataReader dr = null;
                try
                {
                    if (cDataAccess.bExecuteReader(sRequete, sqlCnx, ref dr))
                    {
                        while (dr.Read())
                        {
                          string[] newRow = new string[] { dr[0].ToString(), dr[1].ToString(), dr[2].ToString(), dr[3].ToString() };
                          dgvListe.Rows.Add(newRow);
                        }
                        dr.Close();
                    }
                }
                catch (Exception ex)
                {
                    cUtil.MessageBoxErreur(ex.Message);
                }
                cConnexion.CloseConnexion(ref sqlCnx);
    Cela fonctionne très bien car mes 4 colonnes sont des TextBox et je n'ai qu'à faire un Add d'une ligne de string. Mais j'ai besoin de remplacer dans une colonne par une ComboBox qui doit contenir la liste des sociétés (qui sera issue d'une requête sur une des tables de ma base de données) et la, je ne m'en sors pas du tout ! comment faut il faire ? ajouter colonne après colonne ?
    Je précise que ce datagridview est également saisissable et permet à l'utilisateur de saisir de nouvelles lignes...

    Avez vous un exemple à me donner ou un tuto sur ce sujet ?

    Merci d'avance de vos réponses.

  2. #2
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Il faut définir une colonne de type DataGridViewComboBoxColumn.

    Quelle est la technique utilisée pour spécifier les colonnes du DataGridView ?

    Est-ce que dgvListe est une DataTable ?
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  3. #3
    Membre régulier
    Inscrit en
    Mai 2009
    Messages
    217
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 217
    Points : 103
    Points
    103
    Par défaut
    oui j'ai bien défini ma colonne de type DataGridViewComboBoxColumn.
    mon dgvliste est une datagridview et j'ai défini mes colonne dans les propriétés du datagridview
    mon problème est au niveau du code comment charger ma colonne combobox avec les valeur issues d'une requête sql sur une table et comment, lorsque je rempli mes lignes avec les valeurs issues de ma procédure stockée dbo.PSS_SAISIE_INDICATEUR, mettre le selectvalue sur le bon élément.

  4. #4
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Set the DataSource, DisplayMember, and ValueMember properties of dataGridViewComBoxColumn.
    Source : http://en.csharp-online.net/Presenti...ComboBoxColumn
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  5. #5
    Membre régulier
    Inscrit en
    Mai 2009
    Messages
    217
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 217
    Points : 103
    Points
    103
    Par défaut
    mouai ... cela ne me dit pas comment charger ma datagridview et ma combobox dans mon code avec ma table.... j'aurai préféré un exemple, si quelqu'un sur le forum avait déjà fait quelque chose de similaire. Mais merci quand même pour ta réponse. Je vais chercher...

Discussions similaires

  1. Remplir une ComboBox dans un datagridview par datareader
    Par Machine Head dans le forum Windows Forms
    Réponses: 2
    Dernier message: 14/10/2009, 09h53
  2. Récuperer la valeur texte d'une combobox dans un datagridview
    Par Delphi-ne dans le forum Windows Forms
    Réponses: 0
    Dernier message: 19/03/2009, 10h17
  3. Ajouter une ComboBox dans un DataGridView
    Par mdordenart dans le forum Windows Forms
    Réponses: 5
    Dernier message: 12/03/2009, 13h59
  4. Probleme d'update d'une table dans un DataGridView vers une bd
    Par Faladin dans le forum Windows Forms
    Réponses: 3
    Dernier message: 22/05/2008, 20h12

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