如何在FOREACH
中获取DataGridView的下一行的值foreach (DataGridViewRow row in dataGridViewSelection.Rows)
{
if ((bool)((DataGridViewCheckBoxCell)row.Cells[3]).Value)
{
do
{
list.Add(row.Cells[1].Value.ToString());
}
while (row.Cells[2].Value == the next row.Cells[2].Value-->of the next row);
}
}
我想获取下一行中相同单元格的值,以便我可以比较它们。 谢谢
答案 0 :(得分:2)
您需要使用for
循环而不是foreach
,但这很简单,因为DataGridViewRowCollection实现了所需的信息:
for (int rowNum=0;rowNum<dataGridViewSelection.Rows.Count - 1; ++rowNum)
{
DataGridViewRow row = dataGridViewSelection.Rows[rowNum];
if ((bool)((DataGridViewCheckBoxCell)row.Cells[3]).Value) {
do
{
list.Add(row.Cells[1].Value.ToString());
} while (row.Cells[2].Value == dataGridViewSelection.Rows[rowNum+1].Cells[2].Value);
}
}
通过索引编制索引,您可以轻松访问循环中的任何其他行。