Ajout de plusieurs lignes dans un dataGrid selon comboBox

Résolu
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 - 10 avril 2008 à 17:03
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 - 12 avril 2008 à 11:46
Bonjour tout le monde,

Voila j'ai une fenêtre ou se situe une comboBox(=designation) et un dataGrid.

J'aimerais lorsque je choisi un article dans ma combo, que ça l'ajoute dans le dataGrid.

Exemple :
* Ma comboBox est composé de : "carte mère", "processeur", "carte graphique".
* Je choisi "carte mère"
* Alors dans mon dataGrid on ajoute "carte mère".
* Si je décide de choisir (en plus de la "carte mère") "processeur"
* Alors dans mon dataGrid ça rajoute une deuxième ligne avec "processeur".

Comment puis-je faire en sorte??

Pour remplir mon dataGrid je fais cela :
DataTable dt = new DataTable();
dt.Columns.Add("Designation");
DataRow dr = dt.NewRow();
dr["Designation"] = DesArt.Text;
dt.Rows.Add(dr);
dataGrid3.DataSource = dt;

Merci d'avance!!

2 réponses

loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
10 avril 2008 à 23:40
Bonjour,

Voila j'ai réussit à régler mon problème c'est à dire ajouter une ligne dans mon dataGrid selon la sélection d'une comboBox.

Mon code est le suivant :
privatevoid DesArt_SelectedIndexChanged_1(object sender, System.EventArgs e)

{
     try
     {
          DataRow dr = dt.NewRow();
          dr[0] = DesArt.Text;
          dt.Rows.Add(dr);
          dataGrid3.DataSource = dt; 
     }
      catch(Exception ex)
      {
          MessageBox.Show(ex.ToString());
     }
     finally
    {
         connection.Close();
     } 
}

et le code suivant se situe dans mon load de ma form.
dt = new DataTable();
dt.Columns.Add("Désignation");

Maintenant je vais essayer de voir comment faire en sorte de ne pas afficher 2 fois la même désignation dans mon dataGrid.
3
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
12 avril 2008 à 11:46
Bon ben j'ai enfin réussi a faire en sorte ke si la désignation existé déja dans mon tableau, on ne puisse le rajouter, j'ai fais commce ceci :
ArrayList liste = new ArrayList();
privatevoid DesArt_SelectedIndexChanged(object sender, System.EventArgs e)
{
     try
    {
       if(liste.Contains(DesArt.Text))
       {
          MessageBox.Show("déja existant");
       }
       else
       {
           DataRow dr = dt.NewRow();
           dr[0] = DesArt.Text;
           dt.Rows.Add(dr);
           dataGrid3.DataSource = dt; 
            liste.Add(DesArt.Text);
       }
     }
     catch(Exception ex)
     {
         MessageBox.Show(ex.ToString());
      }
      finally
      {
          connection.Close();
     }
}

Merci quand même d'avoir réfléchi!!
<!-- END TEMPLATE: bbcode_code --> 
3
Rejoignez-nous