[C#] selection multiple dans un DataGridView [Résolu]

Signaler
Messages postés
41
Date d'inscription
lundi 22 mai 2006
Statut
Membre
Dernière intervention
3 mai 2010
-
Messages postés
41
Date d'inscription
lundi 22 mai 2006
Statut
Membre
Dernière intervention
3 mai 2010
-
bonjour tout le monde,
je développe une application avec C# sous visual studio 2005, j'utilise un DataGridView et j'aimerai pouvoir faire des selection multiple des lignes et les ajouter dans untreeview ensuite j'ai trouvé ça dans Codes-sources...:http://www.csharpfr.com/infomsg_DATAGRIDVIEW-SELECTION-MULTIPLE_1097779.aspx
mais ça m'aide pas baucoup..
donc svp si qlq 1 peu m'aider ça sera tres genti
merci d'avance
med

1 réponse

Messages postés
41
Date d'inscription
lundi 22 mai 2006
Statut
Membre
Dernière intervention
3 mai 2010

bonjour tt le monde,
j'ai bien cherché et au final j'ai trouvé la solution...
je vous poste le code pour ceux qui seront interessés...

        private void MenuAjtGam_Click(object sender, EventArgs e)
        {
           //l'idée est d'utiliser myDataGridView.SelectedRows
et row.Index
                foreach (DataGridViewRow row in Dtg.SelectedRows)
                { 
//CsV est une classse ou j'ai mis mes variables.
// DtsGrid est DataSet  
//"entreprise" c'est ma table dans l'aquelle je prens mes variables
// "INTITULE","METIER"..etc c'est les champs qui m'interesse dans ma table "entreprise"         
                    this.CsV.IntituleTrv = this.DtsGrid.Tables["entreprise"].Rows[row.Index]["INTITULE"].ToString();
                    this.CsV.MetierTrv = this.DtsGrid.Tables["TRAVAUX"].Rows[row.Index]["METIER"].ToString();
                    this.CsV.CodTrv = this.DtsGrid.Tables["TRAVAUX"].Rows[row.Index]["CODE"].ToString();
                    this.CsV.IDTrv = this.DtsGrid.Tables["TRAVAUX"].Rows[row.Index]["ID"].ToString();
                    this.CsV.IDTrv1 = Convert.ToInt32(this.DtsGrid.Tables["TRAVAUX"].Rows[row.Index]["ID"]);
                    //tu rajoute un enfant (travail a cette branche root dans mmon treeview
                    TreeNode Niv2TrvAjt = new TreeNode(this.CsV.IntituleTrv);

                    NivEqupmtRootSlct.Nodes.Add(Niv2TrvAjt);
                    Niv2TrvAjt.Text += ("  --  " + this.CsV.MetierTrv + "  --  " + this.CsV.CodTrv);
                    //recuperation de l'ID equipement
                    Niv2TrvAjt.Tag = this.CsV.IDTrv;
                    //this.CsV.TagNodeTrvSlctStr = Niv2TrvAjt.Tag.ToString();
                    Niv2TrvAjt.ForeColor = Color.Blue;
                    //recuperation du num de la dernier node
                    this.CsV.Ligne1 = NivEqupmtRootSlct.Nodes.Count;

                    //ajout de la ligne à la table base de données
                    SqlGrid2 = " INSERT INTO TRAVAUXEQUIPEMENTS (IDE, IDT, ORDRE) VALUES ( " + this.CsV.TagNodeSlctStr + ", " + this.CsV.IDTrv1 + "," + this.CsV.Ligne1 + ")";
                    //on ouvre la connection
                    this.Conn.Open();
                    OleDbDataAdapter DtaGrid2 = new OleDbDataAdapter(this.SqlGrid2, this.Conn);
                    DtaGrid2.Fill(this.DtsGrid2, "TRAVAUXEQUIPEMENTS");
                    //on ferme la connection
                    this.Conn.Close();
                }
            }
           
        }
bon courage et merci pour karim de m'avoir aidé
med