大家好我需要帮助我想循环通过datagrid视图中的所有单元格,我想检查它周围的所有相邻单元格,所以我需要检查单元格周围的所有方向。 这将是8个方向(上,下,左,右,左上,右上,左下,右下) 如果他们是黑人的邻居,我想画它。他们两个。
所以这就是我现在所得到的:
for (int x = 0; x < yourGridName.Rows.Count; x++)
{
//Loop through all cells in that row and change its color.
for (int y = 0; y < yourGridName.Rows[x].Cells.Count; y++)
{
if (dataGridView1.Rows[dataGridView1.SelectedRows[x].Index].Cells[y].Value.ToString() != "YES")
yourGridName.Rows[x].Cells[y].Style.BackColor =
System.Drawing.Color.Black;
}
}
}
答案 0 :(得分:3)
我理解你需要知道如何获得X / Y网格单元的所有8个邻居。
如果你在网格单元格[X] [Y]那么8个邻居应该是
grid [X] [Y-1](如果Y-1> = 0)
grid [X] [Y + 1](如果Y + 1&lt; Cells.Count)
网格[X-1] [Y](如果X-1> = 0)
grid [X + 1] [Y](如果X + 1&lt; Rows.Count)
grid [X + 1] [Y + 1](如果Y + 1&lt; Cells.Count&amp;&amp; X + 1&lt; Rows.Count)
网格[X-1] [Y-1](如果Y-1> = 0&amp;&amp; X-1> = 0)