选项卡按钮切换到Windows窗体应用程序

时间:2017-03-10 07:44:32

标签: c# winforms visual-studio

我正在使用c#在windows表单应用程序中工作。我有两个字段,形式为“用户名”和“密码”,两个按钮“登录”和“取消”。在表单加载光标放在用户名文本框中,这是好的。

但是当我从键盘上按 TAB 而不是转到密码文本框时,它会转到“登录”按钮。我怎么设置这个?

用于选择所有文本的快捷键 CTRL + A 在文本字段中不起作用。 有什么帮助吗?

4 个答案:

答案 0 :(得分:5)

WinForms上的每个控件都有一个TabIndex。您可以在控件的属性中找到它。如果要在 tab

之后将焦点切换到那里,则需要在“密码”文本框中将此值调整为2

在设计器中选择您的控件,进入属性:

enter image description here

并设置TabIndex属性:

enter image description here

快捷键 Cntr + A 仅在您关注TextBox时才有效!还要确保ShortCutsEnabled属性设置为true:

enter image description here

此处参考的是original answer for the shortcut problem。然而它说:

  

TextBox属性值为true时,Multiline控件不支持 CTRL + A 快捷键。

答案 1 :(得分:2)

将密码文本框1的tabindex属性更高更改为用户名文本框的tabindex。 (即用户名tabindex = 1,密码tebaindex = 2)

答案 2 :(得分:2)

通过设置'TabIndex'来设置'标签'的顺序 例如。

controlName.TabIndex = 0;

答案 3 :(得分:2)

以下是关于使用Ctrl + A在TextBox中选择文本的第二个问题的答案。

为此,您需要挂钩TextBox的KeyDown事件。 这就是你选择文字的方式:

private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
    if (e.Control && e.KeyCode == Keys.A) // Select All
    {
        ((TextBox)sender).SelectAll();
        e.SuppressKeyPress = true;
        e.Handled = true;
    }
}