WinForm中变Enter键为Tab键实现焦点转移的方法
本文实例讲述了WinForm中变Enter键为Tab键实现焦点转移的方法,在进行C#应用程序开发时有一定的实用价值。分享给大家供大家参考。
具体实现代码如下:
///<summary>
///窗体控件控制相关的方法
///</summary>
publicclassControlTools
{
privateFormfrm;
publicControlTools(Formfrm)
{
this.frm=frm;
}
///<summary>
///窗体上所有子控件的回车设成Tab
///</summary>
publicvoidEnterToTab()
{
frm.KeyPreview=true;
frm.KeyPress+=newKeyPressEventHandler(frm_KeyPress);
}
///<summary>
///注册窗体的KeyPress事件
///</summary>
///<paramname="sender"></param>
///<paramname="e"></param>
privatevoidfrm_KeyPress(objectsender,KeyPressEventArgse)
{
if(e.KeyChar==(char)Keys.Enter)
{
frm.SelectNextControl(frm.ActiveControl,true,true,true,true);
}
}
///<summary>
///把某一个控件的所有子控件(TextBoxComboBox)的回车设成Tab
///</summary>
///<paramname="groupControl">容器控件</param>
publicvoidEnterToTab(ControlgroupControl)
{
foreach(ControlcontrolingroupControl.Controls)
{
if(controlisTextBox||controlisComboBox)
control.KeyPress+=newKeyPressEventHandler(control_KeyPress);
}
}
///<summary>
///注册控件的KeyPress事件
///</summary>
///<paramname="sender"></param>
///<paramname="e"></param>
privatevoidcontrol_KeyPress(objectsender,KeyPressEventArgse)
{
if(e.KeyChar==13)
{
SendKeys.Send("{Tab}");
e.Handled=false;
}
}
}
希望本文所述变Enter键为Tab键的方法对大家C#程序设计有所帮助。