Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

For a DataGridView, how do I get the values from each row?

I am wondering what is the best way to go iterate through all the rows in a datagridview and get the values from the cells.
Here is what I am thinking of doing, but I don't really like it because if I rearrange the columns then the code will also have to be changed.

for (int i = 0; i < dataGridView.RowCount; i++)
{
   string Value0 = dataGridView1.Rows[i].Cells[0];
   string Value1 = dataGridView1.Rows[i].Cells[1];
   string Value2 = dataGridView1.Rows[i].Cells[2];
}
like image 772
skid Avatar asked Apr 05 '10 21:04

skid


1 Answers

You can use a foreach to iterate over the DataGridViewRows within the DataGridView and use the column names to retrieve the values from the Cells:

foreach (DataGridViewRow dr in dataGridView.Rows)
{
    string col1 = dr.Cells["Col1"].Value.ToString();
    string col2 = dr.Cells["Col2"].Value.ToString();
    string col3 = dr.Cells["Col3"].Value.ToString();
}
like image 72
CAbbott Avatar answered Oct 07 '22 16:10

CAbbott