使用 Tab 键循环单个记录
本文关键字:单个 记录 循环 Tab 使用 | 更新日期: 2023-09-27 17:55:20
我试图在datagridview中获取某种tab
和enter
关键行为。一旦焦点位于数据网格视图中的单元格上,我就想要以下内容:
TAB
- 循环浏览行中的单元格,而不转到行中最后一个单元格之后的下一行。 即继续在单个行中的单元格中循环。
ENTER
- 移动到下一行。
我一直在网上寻找解决方案,但它们通常不是我所追求的行为,它们主要需要创建一个派生的DataGridView
类,如果可能的话,我宁愿避免这样做。
我还想避免触发RowLeave
事件,因为我使用它来验证然后接受/拒绝在该行中所做的任何单元格更改 - 因此有意识地ENTER
按键离开该行并触发其验证和持久性。
我现在已经为此实施了一个解决方案,并认为我应该在这里更新我采用的特定方法的详细信息。
我在DataGridView
的OnKeyDown
事件中加入了类似以下内容的内容:
if (e.KeyCode == Keys.Tab)
{
if (dataGrid.CurrentCell.ColumnIndex == dataGrid.Columns.Count - 1)
{
dataGrid.CurrentCell = dataGrid[1,dataGrid.CurrentCell.RowIndex];
}
}
似乎可以解决问题。