繁体   English   中英

如何在C#中控制datagridview光标移动

[英]how to control datagridview cursor movement in C#

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

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

提前感谢你的帮助。

干杯,

这是Mark Rideout(DatagridView程序管理器)的答案

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

向下滚动4个帖子(之所以要向下滚动,是因为它以后在该线程中提供更好的版本,所以请向下滚动)。

对于将来的参考,如果链接将过期( 所有标记均归Mark Rideout所有 ):

创建一个名为dvg的新类,该类继承自DataGridView。 编译项目,然后使用此扩展的Datagridview-control而不是普通的控件,您将拥有一个datagridview,当按Enter时可以选择下一个单元格:

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);
}

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM