C# 输入事件以移动到另一个文本框

C# 输入事件以移动到另一个文本框,c#,C#,如何在按Enter键时将光标从文本框移动到另一个文本框 我知道怎么按tab键 我希望有人能帮助我。覆盖包含表单的ProcessDialogKey()只需模拟TAB键 有一个.NET类允许您向控件发送密钥 System.Windows.Forms.SendKeys.Send(…)您可以尝试以下操作: private void textBox1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys

如何在按Enter键时将光标从文本框移动到另一个文本框

我知道怎么按tab键


我希望有人能帮助我。

覆盖包含表单的ProcessDialogKey()

只需模拟TAB键
有一个.NET类允许您向控件发送密钥
System.Windows.Forms.SendKeys.Send(…)

您可以尝试以下操作:

    private void textBox1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.KeyCode == Keys.Enter)
        {
            SendKeys.Send("{TAB}");
            e.Handled = true;
            e.SuppressKeyPress = true;
        }
    }
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
    {
        textBox2.Focus();
        e.Handled = true;
    }
}
如果希望Enter始终作为选项卡运行,则可以将表单上的
KeyPreview
属性设置为
true
,并改为在form.KeyDown事件中执行。对于某些控件,它仍然以标准方式工作(如果按钮具有焦点,则在按下Enter键时按下按钮,并且选项卡未执行)


注意:这适用于Windows窗体。如果使用其他技术,请在原始问题中按标记或作为问题文本指定。

如果要移动到特定的文本框,请尝试以下操作:

    private void textBox1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.KeyCode == Keys.Enter)
        {
            SendKeys.Send("{TAB}");
            e.Handled = true;
            e.SuppressKeyPress = true;
        }
    }
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
    {
        textBox2.Focus();
        e.Handled = true;
    }
}

查看
Tabindex
属性。它可以从控件的属性窗口进行设置,因此如果Tabindex为2,则必须按tab键2次才能到达该控件


对于enter,执行默认值并设置它。

Windows窗体?WPF?ASP.NET?其他?请更精确一些。我们不能在ASP.NET中不使用回发吗?@KrishnaThota:正如我在回答中所说:这是针对Windows窗体的。如果在web中使用,您需要使用客户端javascript。不过,我不确定如何执行。您可能会发布一个单独的问题你问这个的地方。