dataGridView中如何在某一单元格输入内容回车后,焦点移动到右侧单元格?

zzzzzz7 2006-11-07 11:04:14
默认是到下方单元格
在线等
...全文
956 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
ustbwuyi 2006-11-07
  • 打赏
  • 举报
回复
捕捉到回车键之后,再把焦点移动到指定的位置就可以了
document.getElementById("你要移到的控件ID").focus();
ustbwuyi 2006-11-07
  • 打赏
  • 举报
回复
获得回车键
if(event.keycode=='13')
zzzzzz7 2006-11-07
  • 打赏
  • 举报
回复
谁贴出代码,测试成功后立即给分,谢谢了
zzzzzz7 2006-11-07
  • 打赏
  • 举报
回复
"单元格在编辑状态下回车" 这个事件是在那里发生的?我拦截不住

重写ProcessKeyPreview可以处理回车以外的其他按键

PreProcessMessage
WndProc
中都不能获得单元格中的回车
Qim 2006-11-07
  • 打赏
  • 举报
回复
dataGridView中如何在某一单元格输入内容回车后,焦点移动到右侧单元格?

自己捕获回车事件,转化为tab事件。
http://community.csdn.net/Expert/topic/5094/5094417.xml?temp=.7949945
yumanqing 2006-11-07
  • 打赏
  • 举报
回复
关注,顶一下
cansum396 2006-11-07
  • 打赏
  • 举报
回复
SendKeys.Send("{Tab}");
zzzzzz7 2006-11-07
  • 打赏
  • 举报
回复
呵呵,这次有了,不知道为什么以前没有ProcessCmdKey方法重写
zzzzzz7 2006-11-07
  • 打赏
  • 举报
回复
谢谢 Qim(莫名) 和其他朋友

我用的是DataGridView 好像没有ProcessCmdKey

我以前用dataGrid确实可以使用ProcessCmdKey
lsj_zrp 2006-11-07
  • 打赏
  • 举报
回复
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if ((!(ActiveControl is Button)) && (keyData == Keys.Up || keyData == Keys.Down || keyData == Keys.Enter))
{
if (keyData == Keys.Enter)
{
System.Windows.Forms.SendKeys.Send("{TAB}");
return true;
}
if (keyData == Keys.Down)
System.Windows.Forms.SendKeys.Send("{TAB}");
else
SendKeys.Send("+{Tab}");
return true;
}
else
return base.ProcessCmdKey(ref msg, keyData);
}
}
woshibai112 2006-11-07
  • 打赏
  • 举报
回复
up up
lovefootball 2006-11-07
  • 打赏
  • 举报
回复
试试ProcessCmdKey
Qim 2006-11-07
  • 打赏
  • 举报
回复
不好意思。试试这个。
KeyEventArgs oKeyEventArgs = new KeyEventArgs(keyData);
if (this.ActiveControl.GetType().Name.Equals("DataGridViewTextBoxEditingControl"))
{
if (oKeyEventArgs.KeyCode == Keys.Enter)
{
MessageBox.Show("Enter");
}
}
Qim 2006-11-07
  • 打赏
  • 举报
回复
楼主。我给我网址不行吗?
前几天刚用的。没有问题。

110,553

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧