【发布时间】:2019-07-19 19:47:18
【问题描述】:
我有一个如下所示的 DataGridView。
我需要获取每一行的 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) 内循环,并执行了上述所有步骤,但这也不起作用。
我在这里做错了什么?任何想法/帮助将不胜感激。我很高兴澄清问题中是否有任何信息不清楚。
【问题讨论】:
-
为什么您只对选定的值感兴趣?听起来您想要全部拥有它们?=!。您如何将数据插入
DataGrundView?建议对源数据进行操作并从那里提取所需的 ID。 -
是的,底线是拥有整个第一列。选择所有值只是我的方法,因为它适用于单行选择。我从绑定到 datagridview 的 SOAP 请求中得到响应。这就是数据的来源。如果有更简单的方法来获取该列,即没有选择,我也愿意研究。
-
请准确发布这段代码(绑定)并向我们展示源代码集。但最后我还是建议从源头上选择,而不是徒步穿越
DataGridView
标签: c# winforms datagridview datagridviewcolumn