我正在编写一个 C# 应用程序(Windows 窗体),其中有一个 10x10 DataGridView,它代表一个迷宫。单击单元格时,我将相应的 x 和 y 添加到二维数组中。单击的每个单元格都应显示黑色背景。
在 CellClick 上:
int row = dataGridView1.CurrentCell.RowIndex;
int column = dataGridView1.CurrentCell.ColumnIndex;
maze[row, column] = 1;
dataGridView1.Refresh();
我还为 CellFormatting 事件实现了一个处理程序:
if (maze[e.RowIndex,e.ColumnIndex] == 1){
e.CellStyle.BackColor = Color.Black;
}
现在,当我单击一个单元格时,样式不会更新。之后,当我单击另一个单元格时,前一个单元格的样式会更新。我已经尝试过控制Refresh()
和Update
控制,但没有运气。
我该如何解决这个问题,以便单击单元格时立即更新单元格的样式?