C#窗体中的可点击网格

本文关键字:网格 窗体 | 更新日期: 2023-09-27 17:59:38

我想生成一个或多或少像http://www.favicon-generator.org/editor/

但我想从用户那里收集高度x宽度(以瓦片为单位),然后生成一个该大小的网格。开始时,瓷砖都应该是白色或"透明"的,当他们点击特定的瓷砖时,它会将其更改为黑色。单击黑色磁贴会将其更改回白色。

我创建了winform来收集高度x宽度,并将其保存为用户设置。但我真的很难找到最好的方法来创建一个按我想要的方式运行的网格。

我最初喜欢创建很多按钮,但这太疯狂了。你会尝试用什么方法来创建这个?

C#窗体中的可点击网格

使用DataGridView,为每个宽度计数添加一列,为每个高度计数添加一行。

然后注册单元格单击事件并更改该单元格的背景色。

    dataGridView1.CellClick += new DataGridViewCellEventHandler(dataGridView1_CellClick);
    void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
    {
        dataGridView1[e.ColumnIndex, e.RowIndex].Style.BackColor = Color.White;
    }