WinForms TabOrder工具:破碎还是只是混乱?

我有一个带有一堆面板的表单,以及一些面板组内的面板。 在Vs2005中使用TabOrder工具时,容器外部的控件给出整数(0),面板内的控件给出小数(72.0),组框内面板内的控件给出三部分值(73.73.0)。 不幸的是,生成的Tab键顺序与我单击我的控件的顺序无关。

此工具是否仅支持嵌套容器? 难道我做错了什么? 我点击时可能按住Shift-或Ctrl-(我试过这些但没有成功)?

我是否会被迫手动输入所有控件的三部分Tab键顺序? 那将是一个无赖。

Tab键顺序工具不是为您手动输入值而设计的; 它是为您按照您希望它们作为用户选项卡进行的顺序单击控件而设计的。

这些数字不是小数; 它们表示其父容器中控件的Tab键顺序。 例如,如果你有一个名为panel1Panel panel1和一个名为button1Button ,那么button1会显示一个如下的数字:

 XY 
  • Xpanel1的Tab键顺序
  • Ypanel1button1的Tab键顺序。

我会承认,设计师并不像它应该的那样直观(或透明),但确实有效。

VS2010中的组框内的文本框和按钮也存在同样的问题。 TabOrder工具毫无用处:无论我如何重新订购制表位,Tab命令都会被破坏。 为了生成正确的Tab键顺序,我必须重新排序如何将控件添加到表单设计器初始化代码中的组框中:

 this.groupBox2.Controls.Add(this.startTimeTextBox); this.groupBox2.Controls.Add(this.endTimeTextBox); this.groupBox2.Controls.Add(this.exitButton); 

这种方式的tab顺序是startTimeTextBox – > endTimeTextBox – > exitButton等等。

我想我已经找到了在设计师中做到这一点的方法:显然你必须单击面板/combobox以分配完整排序的不同部分; 以这种方式,似乎需要使用bredth-first click方法而不是单击子控件本身。

有点难过,因为它迫使你知道整个表格的完整结构,而不仅仅是用户看到的内容。

我遇到了同样的问题并发现了这个工具: http : //archive.msdn.microsoft.com/cdstabindex

我不得不更改清单,以使其适用于VS2010。 另外,我已经修改了自己的源代码以使UI更好一些,但即便如此,我也建议您查看此工具。

控件中删除组框 ,然后再次尝试这适用于我:)