显示DataGridView的第一行(向上滚动到第一行)

时间:2014-03-01 10:49:36

标签: c# winforms datagridview

在我的DataGridView控件中,我想在用户点击Home按钮时转到第一行。

我抓住了keyDown事件,这里是代码:

if (e.KeyCode == Keys.Home)
{
    dgvMain.FirstDisplayedCell = dgvMain.Rows[0].Cells[0];
}

不起作用,也不起作用:

if (e.KeyCode == Keys.Home)
{
    dgvMain.FirstDisplayedScrollingRowIndex = dgvMain.Rows[0].Index;
}

这些代码使网格向上滚动一点但不向第一行滚动。

我如何专注于第一行?没有选择它。

1 个答案:

答案 0 :(得分:1)

我发现问题是。我仍然不明白为什么,但处理这个事件使它成功:

if (e.KeyCode == Keys.Home)
{
    e.Handled = true;
    dgvMain.FirstDisplayedScrollingRowIndex = 0;
}

Home没有做任何事情(AFAIK)但是当我处理它时一切都很好。为什么?我不知道。