首页 > 编程 > C# > 正文

WinForm中变Enter键为Tab键实现焦点转移的方法

2020-01-24 02:28:50
字体:
来源:转载
供稿:网友

本文实例讲述了WinForm中变Enter键为Tab键实现焦点转移的方法,在进行C#应用程序开发时有一定的实用价值。分享给大家供大家参考。

具体实现代码如下:

/// <summary>/// 窗体控件控制相关的方法/// </summary>public class ControlTools{    private Form frm;    public ControlTools(Form frm)    {      this.frm = frm;    }    /// <summary>    /// 窗体上所有子控件的回车设成Tab    /// </summary>    public void EnterToTab()    {      frm.KeyPreview = true;      frm.KeyPress += new KeyPressEventHandler(frm_KeyPress);    }    /// <summary>    /// 注册窗体的KeyPress事件    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param>    private void frm_KeyPress(object sender, KeyPressEventArgs e)    {      if (e.KeyChar == (char)Keys.Enter)      {        frm.SelectNextControl(frm.ActiveControl, true, true, true, true);      }    }    /// <summary>    /// 把某一个控件的所有子控件(TextBox ComboBox)的回车设成Tab    /// </summary>    /// <param name="groupControl">容器控件</param>    public void EnterToTab(Control groupControl)    {      foreach (Control control in groupControl.Controls)      {        if (control is TextBox || control is ComboBox)          control.KeyPress += new KeyPressEventHandler(control_KeyPress);      }    }    /// <summary>    /// 注册控件的KeyPress事件    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param>    private void control_KeyPress(object sender, KeyPressEventArgs e)    {      if (e.KeyChar == 13)      {        SendKeys.Send("{Tab}");        e.Handled = false;      }    }}

希望本文所述变Enter键为Tab键的方法对大家C#程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表