5

我希望我的 datagridview 光标在向单元格输入数据后向右移动到下一列而不是移动到下一行。

我试图通过 dataGridView1_KeyDown 事件捕获键来控制光标,但这并不能阻止光标在将数据输入单元格后移动到下一行......

提前感谢你的帮助。

干杯,

4

1 回答 1

6

这是 Mark Rideout(DatagridView 项目经理)的回答

http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=157055&SiteID=1

向下滚动 4 个帖子(然后更多,因为它们稍后会在线程中制作更好的版本)。

如果链接将过期,供将来参考(Mark Rideout 的所有学分):

创建一个从 DataGridView 继承的名为 dvg 的新类。编译项目,然后使用这个扩展的 Datagridview-control 而不是正常的,你将有一个 datagridview 按下回车键时选择下一个单元格:

public class dgv : DataGridView
{
protected override bool ProcessDialogKey(Keys keyData)
{
    Keys key = (keyData & Keys.KeyCode);
    if (key == Keys.Enter)
    {
        return this.ProcessRightKey(keyData);
    }
    return base.ProcessDialogKey(keyData);
}
protected override bool ProcessDataGridViewKey(KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
    {
        return this.ProcessRightKey(e.KeyData);
    }
    return base.ProcessDataGridViewKey(e);
}

}

于 2008-12-02T03:16:36.130 回答