Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# TabIndex不能正常工作_C#_.net_Winforms - Fatal编程技术网

C# TabIndex不能正常工作

C# TabIndex不能正常工作,c#,.net,winforms,C#,.net,Winforms,我有一个windows窗体应用程序。表单上有三个GroupBox。 每个groupbox都包含一些控件。请看图片。 有一个包含几个复选框的groupbox“标志”。“标志”位于“groupbox1”中。 我使用Tab键遍历每个控件,但它不适用于“flag”中的复选框。我确实为每个控件设置了适当的tabindex 它适用于文本框和按钮,但不适用于复选框 为什么??谢谢你的帮助 编辑 // groupBox2 // this.groupBox2.Controls

我有一个windows窗体应用程序。表单上有三个GroupBox。 每个groupbox都包含一些控件。请看图片。

有一个包含几个复选框的groupbox“标志”。“标志”位于“groupbox1”中。 我使用Tab键遍历每个控件,但它不适用于“flag”中的复选框。我确实为每个控件设置了适当的tabindex

它适用于文本框和按钮,但不适用于复选框

为什么??谢谢你的帮助

编辑

 // groupBox2
        // 
        this.groupBox2.Controls.Add(this.pictureBox10);
        this.groupBox2.Controls.Add(this.pictureBox9);
        this.groupBox2.Controls.Add(this.pictureBox8);
        this.groupBox2.Controls.Add(this.pictureBox7);
        this.groupBox2.Controls.Add(this.chkStoplight);
        this.groupBox2.Controls.Add(this.lblStoplight);
        this.groupBox2.Controls.Add(this.chkIsCount);
        this.groupBox2.Controls.Add(this.chkExceptionFlag);
        this.groupBox2.Controls.Add(this.chkIsActive);
        this.groupBox2.Controls.Add(this.lblIsActive);
        this.groupBox2.Controls.Add(this.lblExceptionFlag);
        this.groupBox3.Controls.Add(this.lblIsCount);
        this.groupBox2.Location = new System.Drawing.Point(16, 201);
        this.groupBox2.Name = "groupBox2";
        this.groupBox2.Size = new System.Drawing.Size(321, 70);
        this.groupBox2.TabIndex = 10;
        this.groupBox2.TabStop = true;
        this.groupBox2.Text = "Flags";

        // 
        // chkStoplight
        // 
        this.chkStoplight.AutoSize = true;
        this.chkStoplight.Location = new System.Drawing.Point(44, 25);
        this.chkStoplight.Name = "chkStoplight";
        this.chkStoplight.Size = new System.Drawing.Size(15, 14);
        this.chkStoplight.TabIndex = 0;
        this.chkStoplight.UseVisualStyleBackColor = true;

        In the property, I found TabStop is true for chkStoplight.

对于System.Windows.Forms.GroupBox

您应该确保您的GroupBox
标志
具有适当的TabIndex集

发件人:

此外,默认情况下,GroupBox控件有自己的TabIndex 值,它是一个整数。GroupBox控件本身不能具有 在运行时聚焦。因此,GroupBox中的每个控件都有自己的 十进制选项卡索引值,以.0开头。当然,作为索引 如果GroupBox控件的 相应地增加。如果将TabIndex值从5更改为6, 组中第一个控件的TabIndex值将自动显示 对6.0的更改,等等

另外,请确保GroupBox
标志的属性未设置为false。我认为false是默认值


对于System.Windows.Controls GroupBox

确保已设置该属性。这也默认为false

更新:您的所有控件似乎都被添加到了
groupBox3
。您应该确保它们中的每一个都只添加到其包含的groupbox中。例如,
checkBox1
checkBox2
checkBox3
都应添加到
标志
,该标志本身应添加到
groupBox1
groupBox3
应该只包含Back、Next、Finish和Cancel。

我发现在WinForms组框中获取选项卡顺序的唯一方法是更改控件添加到生成的InitializeControl方法中的组框的顺序

如果有多个分组框,则必须检查分组框添加到其容器的顺序,并可能对其进行更改

我真的不喜欢编辑生成的代码,但就我所见,这是解决这个问题的唯一方法


设置组框的TabStop属性没有任何帮助。

请告诉我们在连续按tab键后哪个控件处于活动状态。代码只是tabindex的数字。除复选框外,所有控件都处于活动状态。您使用的是
System.Windows.controls.GroupBox
还是
System.Windows.Forms.GroupBox
?this.groupBox1=new System.Windows.Forms.GroupBox();GroupBox 1的TabStop/TabIndex设置是什么?GroupBox没有TabStop属性。请检查链接。它专门用于GroupBox.TabStop属性的MSDN文章。此外,我测试了创建一个新的GroupBox,并验证了a)该属性存在,b)它默认为false.ok。也许复选框只用于鼠标而不是按键?我更新了答案,将
System.Windows.Controls.GroupBox
System.Windows.Forms.GroupBox
的属性都包括在内。我最初的回答是基于您使用表单GroupBox的假设,这可能解释了为什么我发现存在TabStop属性而您没有。您的复选框应该将
TabStop
(或
IsTabStop
)默认为true。我仍然认为问题出在您的
标志
GroupBox没有正确设置其
TabStop
属性。