Bonjour à tous,
Etant donné que je débute en développement avec le C# je rencontre quelques problèmes dans mon application.
Je m'explique j'ai des boutons que je les crée statiquement mais j'affecte leurs textes dynamiquement. Je veux quand je clique sur l'un de ces boutons j'affiche son texte dans une colonne d'une nouvelle ligne de la datagrid view. Voilà mon code qui ne marche pas correctement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
 
                panel_article.Controls[t - k].Text = (string)dgvArticle_commande.Rows[k].Cells[1].Value + "\n" + dgvArticle_commande.Rows[k].Cells[2].Value.ToString();
                panel_article.Controls[t - k].Name = dgvArticle_commande.Rows[k].Cells[1].Value.ToString();
panel_article.Controls[t - k].Click += new EventHandler(article_Click);
et pour l'évènement article_click
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
36
37
38
39
40
41
42
43
44
 
public void article_Click(object sender, System.EventArgs e)
        {
 
 
            Button btnArticle = (Button)sender;
            string prixdgv = (string)btnArticle.Tag;
            float prix = Single.Parse(prixdgv);
            string nom = btnArticle.Name;
            //int nbreLigne = dgv_commande.Rows.Count - 1;
            int valeur = 0;
            int i = 0;
            if (dgv_commande.RowCount - 1 > 0)
            {
                for (i = 0; i < dgv_commande.RowCount - 1;i++ )
                {
 if (nom.Equals( dgvArticle_commande.Rows[i].Cells[1].Value.ToString()))
                    {
                        valeur = (int)this.dgv_commande.Rows[i].Cells[0].Value;
                        valeur+=1;
                        this.dgv_commande.Rows[i].Cells[0].Value = valeur;
                    }
 
 
                    else
                    {
 dgv_commande.Rows.Insert(i+1,1);
                        dgv_commande.Rows[i + 1].Cells[0].Value = 1;
                        dgv_commande.Rows[i + 1].Cells[1].Value = nom;
                        dgv_commande.Rows[i + 1].Cells[2].Value = "";
                        dgv_commande.Rows[i + 1].Cells[3].Value = "";
                        dgv_commande.Rows[i + 1].Cells[4].Value = prix;
 
                    }
 
                }
            }
            else
            {
                dgv_commande.Rows.Add(1, nom, "", "", prix);
 
            }
 
        }
ça me gere une exception au niveau de
Code : Sélectionner tout - Visualiser dans une fenêtre à part
   if (nom.Equals( dgvArticle_commande.Rows[i].Cells[1].Value.ToString()))
de type
La référence d'objet n'est pas définie à une instance d'objet
.
S'il vous plait aidez moi.

Merci