DataGridView响应键盘事件
2021-03-02 06:29
标签:eve res bool ret str ted https com index 问题: 在做《研发日工资表》的时候,需要在单元格编辑时响应键盘按键(按F6向下批量填充数据)。 dataGridView1_KeyPress(object sender, KeyPressEventArgs e) 事件不起作用。 解决: 捕获键盘重写键盘事件方法 直接在窗体中覆写即可。 参考: [1]. 捕获键盘事件控制DataGridView选中行改变 https://www.jianshu.com/p/6f406e5f7c34 DataGridView响应键盘事件 标签:eve res bool ret str ted https com index 原文地址:https://www.cnblogs.com/ly1686/p/13059935.htmlProcessCmdKey(ref Message msg, Keys keyData)
,然后判断按键,进行处理响应的功能。 protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if (keyData == Keys.Up)//上键
{
int index = dataGridView1.CurrentCell.RowIndex;
if (index > 0)
{
dataGridView1.CurrentCell = dataGridView1.Rows[index--].Cells[0];
dataGridView1.Rows[index].Cells[0].Selected = true;
}
return true;
}
if (keyData == Keys.Down)//下键
{
int index = dataGridView1.CurrentCell.RowIndex;
if (index 1)
{
dataGridView1.CurrentCell = dataGridView1.Rows[index++].Cells[0];
dataGridView1.Rows[index].Cells[0].Selected = true;
}
return true;
}
if (keyData == Keys.Enter)//Enter键
{
DataGridView1_CellDoubleClick(null , null);
}
return base.ProcessCmdKey(ref msg, keyData);
}
文章标题:DataGridView响应键盘事件
文章链接:http://soscw.com/index.php/essay/58919.html