2009-07-30 87 views
0

我有一个非常复杂的用户界面,上面有数百个控件/标签。我想设置的制表位为每个标签假如下如何在C#中为标签设置false为tabstop值?

//在MyForm.designer.cs

标签myLabel;

私人无效的InitializeComponent()

{

this.myLabel =新标签();

this.myLabel.TabIndex = 1;

...

}

//在MyForm.cs

this.myLabel.TabStop = FALSE;

但它不工作。有没有什么办法来设置tabstop的值,以便选项卡不会停在myLabel?

+0

我不相信标准的.NET标签具有TabStop属性,因为他们自己从来没有得到关注。这是一个标准的.NET标签吗?如果是这样,我认为问题在于其他地方,因为标签不能阻止标签,据我所知。 – bernhof 2009-07-30 06:26:29

+0

我发现尽管我们可以设置TabSTop的值,但它不被使用 // //摘要: //获取或设置一个值,该值指示用户是否可以选中System.Windows.Forms.Label。 //此属性未被此类使用。 // //返回: //此类不使用此属性。默认值是false。 [EditorBrowsable(EditorBrowsableState.Never)] 但不知何故标签丢失两个按钮之间(与tabindex 0和2)。我在这两个按钮中有一个标签(带有tabindex 1)。 – malay 2009-07-31 09:02:36

+0

标签具有与它们关联的TabStop布尔属性。在VS2015中,控件通常会获得焦点并需要禁用,但TabStop属性不会显示在设计器属性窗口中。 – Matth3w 2015-12-03 20:38:03

回答

1

尝试将tabindex设置为-1,这通常会导致在我使用的大多数实现中跳过制表符。

2

如果您使用的是标准Label控件,则不应获得焦点。 Label的行为只是将焦点转移到可以获得它的第一个控件(例如TextBox)。但是,请注意,如果您的控件可以具有输入焦点(例如TextBox),则一旦该控件获得焦点,焦点将保留它,无论TabStop属性如何。

相关问题