protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if (keyData == Keys.Enter && ((!(ActiveControl is System.Windows.Forms.TextBox)
|| !((System.Windows.Forms.TextBox)ActiveControl).AcceptsReturn)))
{
SendKeys.SendWait("{Tab}");
return true;
}
if (keyData == ( Keys.Enter | Keys.Shift))
{
SendKeys.SendWait("+{Tab}");
return true;
}
return base.ProcessCmdKey(ref msg, keyData);
}
Form 重写ProcessCmdKey: 解决enter同时Tab 的问题
最新推荐文章于 2021-12-10 14:24:18 发布
此代码重写了Form的ProcessCmdKey方法,当按下Enter键且焦点不在TextBox上时,模拟发送Tab键进行控件切换;若按下Shift+Enter,则会发送Shift+Tab进行逆向切换。这样实现了在不使用TextBox时,Enter键也能进行控件间的导航。
摘要由CSDN通过智能技术生成