web-dev-qa-db-fra.com

Lecture de données à partir de DataGridView en C #

Comment lire les données de DataGridView en C #? Je veux lire les données apparaissent dans le tableau. Comment naviguer à travers les lignes?

16
sharon

quelque chose comme

for (int rows = 0; rows < dataGrid.Rows.Count; rows++)
{
     for (int col= 0; col < dataGrid.Rows[rows].Cells.Count; col++)
    {
        string value = dataGrid.Rows[rows].Cells[col].Value.ToString();

    }
} 

exemple sans utiliser index

foreach (DataGridViewRow row in dataGrid.Rows)
{ 
    foreach (DataGridViewCell cell in row.Cells)
    {
        string value = cell.Value.ToString();

    }
}
41
CliffC

Si vous le souhaitez, vous pouvez également utiliser les noms de colonne à la place des numéros de colonne.

Par exemple, si vous souhaitez lire des données à partir de DataGridView sur la 4. ligne et la colonne "Nom" ...__, cela me permet de mieux comprendre la variable avec laquelle je traite. 

dataGridView.Rows[4].Cells["Name"].Value.ToString();

J'espère que ça aide.

8
macrobook
string[,] myGridData = new string[dataGridView1.Rows.Count,3];

int i = 0;

foreach(DataRow row in dataGridView1.Rows)

{

    myGridData[i][0] = row.Cells[0].Value.ToString();
    myGridData[i][1] = row.Cells[1].Value.ToString();
    myGridData[i][2] = row.Cells[2].Value.ToString();

    i++;
}

J'espère que cela t'aides....

2
Dulini Atapattu

Exemple de code: Lecture des données à partir de DataGridView et stockage dans un tableau

int[,] n = new int[3, 19];
for (int i = 0; i < (StartDataView.Rows.Count - 1); i++)
{
    for (int j = 0; j < StartDataView.Columns.Count; j++)
    {
        if(this.StartDataView.Rows[i].Cells[j].Value.ToString() != string.Empty)
        {
            try
            {
                n[i, j] = int.Parse(this.StartDataView.Rows[i].Cells[j].Value.ToString());
            }
            catch (Exception Ee)
            { //get exception of "null"
                MessageBox.Show(Ee.ToString());
            }
        }
    }
}
1
Bibhu
 private void HighLightGridRows()
        {            
            Debugger.Launch();
            for (int i = 0; i < dtgvAppSettings.Rows.Count; i++)
            {
                String key = dtgvAppSettings.Rows[i].Cells["Key"].Value.ToString();
                if (key.ToLower().Contains("applicationpath") == true)
                {
                    dtgvAppSettings.Rows[i].DefaultCellStyle.BackColor = Color.Yellow;
                }
            }
        }
0
Muhammad Mubashir