如何将数据网格拆分为相同的矩形

本文关键字:拆分 数据 数据网 网格 | 更新日期: 2023-09-27 18:28:02

我有在所有单元格中迭代的代码,如何使每个4x4单元格具有不同的颜色?

这是我的代码:

int c = ran.Next(1, 5);
for (int i = 0; i < box_width; i++)
{
    for (int j = 0; j < box_height; j++)
    {
        switch (c)
        {
            case 1:
                MyClass.grid.Rows[j].Cells[i].Style.BackColor = Color.Yellow;
                break;
            case 2:
                MyClass.grid.Rows[j].Cells[i].Style.BackColor = Color.LightGray;
                break;
            case 3:
                MyClass.grid.Rows[j].Cells[i].Style.BackColor = Color.LightBlue;
                break;
            case 4:
                MyClass.grid.Rows[j].Cells[i].Style.BackColor = Color.Blue;
                break;
        }
    }
}

此代码使用随机拾取的颜色填充所有网格。我想把它分成一些不同颜色的X X X维度。

感谢

如何将数据网格拆分为相同的矩形

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中的行数和单元格数相同。

让我知道这是否适用于你,我还没有测试过,但它似乎就在我的脑海中。

然而,如果单元格不是偶数4x4倍数,这将引发异常。你确定它们总是4x4的倍数吗?如果没有,您必须添加错误检查。