2010-10-18 3 views
1

Je veux utiliser datagridview pour afficher certaines données (informations) à l'utilisateur. Mon datagridview a 4 colonnes. Lorsque j'utilise ce codeInsérer des données dans datagridview donne l'exception

private void sfactor_Load(object sender, EventArgs e) 
{ 
     dataGridView1.Rows[0].Cells[0].Value = "book"; 
     dataGridView1.Rows[1].Cells[0].Value = "pen"; 
     dataGridView1.Rows[2].Cells[0].Value = "x"; 
     dataGridView1.Rows[3].Cells[0].Value = "y"; 
     dataGridView1.Rows[4].Cells[0].Value = "z"; 
} 

Je veux montrer cette information juste à column[0]. Quand le programme s'exécute, il a l'exception:

Index was out of range. 
Must be non-negative and less than the size of the collection. 
Parameter name: index 

Je sais pourquoi mais je ne sais pas comment je peux le résoudre. Maintenant, j'ai besoin de votre aide et de votre expérience. J'attend ta réponse.

Répondre

1

Vous devez créer les lignes avant d'affecter des valeurs. Il y a une surcharge qui vous permet de créer et les valeurs définies en même temps:

dataGridView1.Rows.Add("book"); 
    dataGridView1.Rows.Add("pen"); 
    dataGridView1.Rows.Add("x"); 
    dataGridView1.Rows.Add("y"); 
    dataGridView1.Rows.Add("z"); 
+0

Si je veux ajouter « x » dans la ligne [3] et de la colonne [ 4], où je peux isert nombre de ligne et colonne? – mahnaz

+0

@mahnaz Une fois que vous avez ajouté les lignes, vous pouvez les traiter par index. – stuartd

2

Vous souhaitez créer une datatable et la remplir. Ensuite, vous pouvez utiliser la propriété datasource de votre datagridview pour lier votre datatable à datagridview.

+0

ooh, yeees.you êtes right.:-D – mahnaz

Questions connexes