2011-06-15 52 views
0

我有一个奇怪的问题,我被要求解决,但唉,我迄今为止绘制了一个空白。正如标题所示,我试图让两个文本框的标签顺序一个接一个地跟随。TabIndex两个控件包含一个表单元格ASP.Net

这个想法是(这是继承的代码,而不是我自己的设计),例程是调用,建立可插入单元格插入两个文本框和一个链接。然后返回,并在表格的每一行中生成该单元格的新副本。

我已经尝试设置文本框的TabIndex,并发现当我选项卡我只得到尽可能第一个盒子(txtPound)和从来没有第二个(txtPence)。

我无法确定问题是由于试图在TableCell中完成此操作还是完全是其他操作。

希望这是明确的,但如果您需要任何进一步的信息,那么我会尽量提供它。

我已经在下面的代码中包含了一个分条版本,本质上这是以aspx的速度添加到一个表格行。

任何帮助将不胜感激。

private TableCell EstimateInputs(Brief item) 
     { 
    TableCell td = new TableCell();   

       TextBox txtPounds = new TextBox(); 

       string[] agencyCosts;     
       txtPounds.TabIndex = 1; 
       td.Controls.Add(txtPounds); 

       //td.Controls.Add(new LiteralControl("<span>.</span>")); 

       TextBox txtPence = new TextBox(); 
           txtPence.MaxLength = 2; 


       txtPence.TabIndex = 2; 
       td.Controls.Add(txtPence); 

       td.Controls.Add(new LiteralControl("</p></fieldset>")); 
     } 
+0

何时何地以编程方式生成这些控件,以及您要添加此TableCell的控件是什么?您是否在每次回发时重新创建它们,并使用与之前相同的ID(我至少会为文本框分配一个ID)。 – 2011-06-15 14:40:02

+0

我认为问题的根源在于您需要增加TabIndex,对于每个TextBox,它现在都是“1”或“2”。你至少可以包含这个代码发生的事件处理程序的头文件吗?那么至少我们可以知道是否有任何可以用来设置TabIndex值的EventArgs。 – pseudocoder 2011-06-15 14:56:46

+0

我已经为该方法添加了标题。控制使用像这样tr.Cells.Add(EstimateInputs(item));.这是在一个循环内部,因此可能存在多个这样的事情,所以我认为对于由伪代码提到的循环1/2问题肯定有一些说法。 – Morn 2011-06-15 15:18:20

回答

0

所以它最终成为一个完整的红色鲱鱼。事实证明有一些JavaScript函数适用于处理货币价值的文本框。它会停止除数字按键之外的任何其他操作,这意味着它包含Tab键。

所以神秘感解决了 - 感谢您的帮助。

相关问题