我试图获得某个tab
& datagridview中的enter
关键行为。一旦焦点在datagridview中的单元格上,我就会喜欢以下内容:
TAB
- 循环遍历行中的单元格,而不转到行中最后一个单元格之后的下一行。即继续循环通过单个行中的细胞。
ENTER
- 移至下一行。
我一直在网上寻找解决方案,但他们通常不是我以后的行为,而且他们大多需要创建一个派生的DataGridView
课程,我会这样做。如果可能的话,我宁愿避免。
我还想避免触发RowLeave
事件,因为我正在使用它来验证&然后接受/拒绝在该行中进行的任何细胞更改 - 因此有意识的ENTER
按键移开该行并触发其验证&持久性。
答案 0 :(得分:0)
我现在已经实现了这个解决方案,并且我认为我应该在这里更新我所采用的特定方法的详细信息。
我在DataGridView
OnKeyDown
事件中添加了以下内容:
if (e.KeyCode == Keys.Tab)
{
if (dataGrid.CurrentCell.ColumnIndex == dataGrid.Columns.Count - 1)
{
dataGrid.CurrentCell = dataGrid[1,dataGrid.CurrentCell.RowIndex];
}
}
似乎可以做到这一点。