当前位置:  开发笔记 > 编程语言 > 正文

如何使TextBox上的Enter作为TAB按钮

如何解决《如何使TextBox上的Enter作为TAB按钮》经验,为你挑选了2个好方法。

我有几个文本框.我想让Enter按钮充当Tab.因此,当我将在一个文本框中时,按Enter将使我移动到下一个文本框.你能否告诉我如何实现这种方法而不在textbox类中添加任何代码(如果可能的话,没有覆盖等等)?



1> Behzad..:

这是我经常使用的代码.它必须是KeyDown事件.

if (e.KeyData == Keys.Enter)
{
    e.SuppressKeyPress = true;
    SelectNextControl(ActiveControl, true, true, true, true);
}

UPDATE

其他方式是发送"TAB"键!并覆盖该方法使它更容易:)

protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{            
    if (keyData == (Keys.Enter))
    {
        SendKeys.Send("{TAB}");
    }

    return base.ProcessCmdKey(ref msg, keyData);
}



2> Patrick Desj..:

你可以写任何控件的keyDown:

        if (e.KeyCode == Keys.Enter)
        {

            if (this.GetNextControl(ActiveControl, true) != null)
            {
                e.Handled = true;
                this.GetNextControl(ActiveControl, true).Focus();

            }
        }

GetNextControl在Vista上不起作用.

要使它适用于Vista,您需要使用下面的代码来替换this.GetNextControl ...:

System.Windows.Forms.SendKeys.Send("{TAB}");

推荐阅读
喜生-Da
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有