我可以使用AcceptButton()移动到下一个文本框吗?

时间:2014-03-27 05:41:34

标签: c#

我正在做一个简单的登录屏幕,我已经在密码文本框中实现了一个简单的方法来模拟点击的“确定”按钮:

private void textpwd_TextChanged(object sender, EventArgs e)
{
    this.AcceptButton = btnLogin;
}

我可以在用户名文本框中使用相同的方法移动到密码文本框吗?

private void textusername_TextChanged(object sender, EventArgs e)
{
    this.AcceptButton = textpassword.Focus();
}

2 个答案:

答案 0 :(得分:1)

private void textusername_KeyDown(object sender, KeyEventArgs e)
{
    if(e.KeyCode==Keys.Enter)
        textpassword.Focus(); // or SendKeys.Send("{Tab}");
}

答案 1 :(得分:0)

不要为每个TextBox编写特定代码,最好模拟Tab按键行为。

  1. 通过View - >修改标签顺序TabOrder根据您的需求而定。
  2. 为所有表单控件KeyDown事件

    设置以下方法
    private void AllControls_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.KeyCode == Keys.Enter)
        {
            SendKeys.Send("{TAB}");
            e.SuppressKeyPress = true;                
        }
    }