如何在窗体上的控件上禁用选项卡索引?

时间:2012-09-04 21:08:27

标签: c# tabindex

我有一个包含2个按钮和2个标签的表单。

我想设置按钮1 = tabIndex = 0,按钮2 = tabIndex = 1并且我不想将tabIndex设置为2个标签,这意味着如果用户按Tab键,它将从按钮1转到按钮2。

我将如何做到这一点?

6 个答案:

答案 0 :(得分:35)

只需将Labels的TabStop属性设置为false,将Buttons的TabIndex属性设置为您想要的任何内容。您可以在设计器的“属性”窗口中直接执行此操作。

答案 1 :(得分:1)

button1.TabIndex = 0;
button2.TabIndex = 1;

默认情况下,标签将TabStop设置为false,这意味着它们不应通过按Tab键获得焦点。

答案 2 :(得分:0)

将标签的tabstop属性设置为false?

http://msdn.microsoft.com/en-us/library/system.windows.forms.control.tabstop.aspx

否则,只需将标签的tabindex值设置为按钮前的值即可。然后,您可以使用加速键来点击按钮。

答案 3 :(得分:0)

就我而言,我的所有标签都没有TabStop property

我甚至无法将TabIndex设置为-1,因为它会说Property value not valid

但是我注意到,一旦我运行应用程序,无论我的TabIndex对我的所有标签有什么价值,当我按下键盘上的Tab时,它不会停留在任何标签上。

  

原因是Label控件无法获得焦点。使Label控件获得焦点的唯一方法是调用Label.Focus方法。

有关详细信息,请参阅此论坛:MSDN Forum.

答案 4 :(得分:0)

根据MSDN上的文档,TabStop属性与Label 类无关,因此将TabStop设置为true无效。所以我将两个标签的标签索引设置为0,按钮1将设置标签索引1,按钮2将标签索引2

答案 5 :(得分:0)

在设计环境中,您可以使用Tab键标记标签。但是,当您运行Windows窗体时,不能使用Tab键标记标签。因此,您不需要TabStop或调整标签的Tab索引。