0

我有一个 CompositeControl,每个都包含一个 TextBox ( TextBoxA) 和三个按钮 ( ButtonAButtonBButtonC)。我的页面根据页面的状态动态生成n个这些 CompositeControl。

我已将 TabIndex 设置TextBoxA为一个正值,在该控件的 OnPreRender 方法期间每个控件增加 1:

TextBoxA.TabIndex = customControlPosition;
ButtonA.TabIndex = -1;
ButtonB.TabIndex = -1;
ButtonC.TabIndex = -1;

我已经通过调试验证了customControlPosition正确地将正的增量值(1、2、3、4 等)分配给 TabIndex 属性。

当前的行为是每次按下TabKey 都会移动光标以突出显示 CompositeControl 中的每个按钮(其 TabIndex 为 -1,不应该被制表符),然后继续将光标放在下一个 CompositeControl 中文本框。我想要做的是让关键直接Tab将焦点从一个 TextBox 移动到下一个 CompositeControl 中的 TextBox。

有什么我想念的东西可以让我这样做吗?

4

2 回答 2

2

我发现了这个问题。

我使用的 TextBox 是一个自定义类,它是 asp:TextBox 的包装器,并且自定义类没有正确地将 TabIndex 值分配给 asp:TextBox。

于 2013-03-19T15:36:09.517 回答
1

尝试为您的按钮设置TabIndex32767(可能的最大值)。数字越大,控件在 Tab 键顺序中的时间越晚。

我想 32767 比您将添加到页面的控件数量高很多?

看到这个:

标签索引

于 2013-03-19T12:38:53.397 回答