我有一个 DataGridView,其中有许多单元格的 ReadOnly 属性设置为 True。
当用户使用 tab 键在单元格中切换时,如果 ReadOnly 属性为真,我想将焦点移动到下一个单元格上。我的代码如下:
private void filterGrid_CellEnter(object sender, DataGridViewCellEventArgs e)
{
if (!filterGrid.Rows[e.RowIndex].Cells[e.ColumnIndex].ReadOnly)
{
EditCell(sender, e);
}
else
{
//Move to the next cell
filterGrid.Rows[e.RowIndex].Cells[e.ColumnIndex + 1].Selected = true;
}
}
但是,当我运行上面的代码时,我收到以下错误:
操作无效,因为它会导致对 SetCurrentCellAddressCore 函数的可重入调用。
我正在使用 C# 4.0
提前致谢。