int c = ran.Next(1, 5);
for (int i = 0; i < box_width; i += 2)
{
for (int j = 0; j < box_height; j += 2)
{
Color cellColor;
switch (c)
{
case 1:
cellColor = Color.Yellow;
break;
case 2:
cellColor = Color.LightGray;
break;
case 3:
cellColor = Color.LightBlue;
break;
case 4:
cellColor = Color.Blue;
break;
}
MyClass.grid.Rows[j].Cells[i].Style.BackColor = cellColor;
MyClass.grid.Rows[j].Cells[i+1].Style.BackColor = cellColor;
MyClass.grid.Rows[j+1].Cells[i].Style.BackColor = cellColor;
MyClass.grid.Rows[j+1].Cells[i+1].Style.BackColor = cellColor;
}
}
Предполагается, что box_width и box_height совпадают с количеством строк и ячеек в вашем DataGridView.
Дайте мне знать, если это работает для вас, я не проверял это, но мне показалось, что это правильно.
Однако это вызовет исключение, если ячейки не кратны четному 4х4. Вы уверены, что они всегда будут кратны 4х4? Если нет, добавьте проверку ошибок.