DataGridView, цикл по всем строкам за исключением - PullRequest
0 голосов
/ 08 марта 2012

Привет всем, кому мне нужна помощь. Я хочу пройтись по всем ячейкам в виде таблицы данных и хочу проверить все соседние ячейки вокруг него, поэтому мне нужно проверить все направления вокруг ячейки. Это будет 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;
    }
  }
}

1 Ответ

3 голосов
/ 08 марта 2012

Что я понимаю, вам нужно знать, как получить все 8 соседей для вашей ячейки сетки X / Y.

Если вы в ячейке сетки [X] [Y], тогда 8 соседей должны быть

grid [X] [Y-1] (если Y-1> = 0)сетка [X] [Y + 1] (если Y + 1 = 0)сетка [X + 1] [Y] (если X + 1 = 0 && X-1> = 0)

...