如何获取dataGridView中每一行的第一列的所有值?

时间:2019-07-19 19:47:18

标签: c# winforms datagridview datagridviewcolumn

我有一个DataGridView,如下所示。

enter image description here

我需要获取每一行的ID值,并在每个循环中对其执行操作。 如果选择特定的行,则可以获取ID值。但是,我想要做的基本上是从语法上选择所有行,并在我的for循环的每个计数中获取ID值。

理想情况下,我在第一次迭代中得到2645,在第二次迭代中得到1723,依此类推。

到目前为止,我尝试过的是:

if (dataGridView1.SelectedCells.Count > 0)
{
    int selectedrowindex = dataGridView1.SelectedCells[0].RowIndex;
    DataGridViewRow selectedRow = dataGridView1.Rows[selectedrowindex];
    string IDStr = Convert.ToString(selectedRow.Cells["ID"].Value);               

    //an operation with the ID Value               
}

这仅适用于单行,当我手动选择该行时。对于DataGridView中的每一行,我都尝试添加dataGridView1.SelectAll()并在foreach(DataGridViewRow row in dataGridView1.SelectedCells)内循环,并执行上述所有步骤,但这也不起作用。

我在这里做错了什么?任何想法/帮助将不胜感激。我很高兴澄清问题中是否有任何不清楚的信息。

1 个答案:

答案 0 :(得分:0)

尚未测试此代码,但类似的东西应该可以工作

if (dataGridView1.SelectedCells.Count > 0)
{
    foreach (GridViewRow row in dataGridView1.Rows)
    {
        int id = row[0].text;
    }
}

设置一个断点,看看它是否获得ID, 希望对您有帮助