Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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
表单元格ASP.Net中包含的两个控件的TabIndex_Asp.net - Fatal编程技术网

表单元格ASP.Net中包含的两个控件的TabIndex

表单元格ASP.Net中包含的两个控件的TabIndex,asp.net,Asp.net,我有一个奇怪的问题,我被要求解决,但可惜我到目前为止画了一个空白。正如标题所示,我正在尝试获取两个文本框的选项卡顺序,以便一个接一个地跟随 其思想是(这是继承的代码,而不是我自己设计的代码),一个例程是构建一个表单元格的调用,插入两个文本框和一个链接。然后返回,并在表中的每一行生成该单元格的新副本 我尝试过为文本框设置TabIndex,发现当我使用tab时,我只能到达第一个框(txtPound),而不能到达第二个框(txtPence) 我无法确定问题是否是由于试图在TableCell中执行此操作

我有一个奇怪的问题,我被要求解决,但可惜我到目前为止画了一个空白。正如标题所示,我正在尝试获取两个文本框的选项卡顺序,以便一个接一个地跟随

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

我尝试过为文本框设置TabIndex,发现当我使用tab时,我只能到达第一个框(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>"));
        }
专用TableCell估算输入(简要项)
{
TableCell td=新的TableCell();
TextBox txtbolds=新的TextBox();
字符串[]代理成本;
txtPounds.TabIndex=1;
td.Controls.Add(txt磅);
//td.Controls.Add(新的LiteralControl(“.”);
TextBox txtpense=新的TextBox();
txtPence.MaxLength=2;
txtPence.TabIndex=2;
td.Controls.Add(txtpense);
添加(新的LiteralControl(“

”); }
所以这完全是一个骗局。原来有一个小JavaScript函数应用于处理货币值的文本框。它停止除数字键以外的任何操作,这意味着它包括tab键


所以谜团就解开了——谢谢你的帮助。

你在什么地方、什么时候以编程方式生成这些控件,以及你将这个TableCell添加到什么控件中?您是否在每次回发时都使用与以前相同的ID重新创建它们(我将至少为文本框分配一个ID)。我认为问题的根源在于您需要增加TabIndex,当前每个文本框的TabIndex都将为“1”或“2”。是否可以至少包含此代码所在的事件处理程序的标头?然后,至少我们可以知道是否有任何EventArgs可用于设置TabIndex值。控件的使用方式如下:tr.Cells.Add(EstimateInputs(item));。这是在一个循环中,所以可以存在多个这样的东西,所以我认为对于pseudocoder提到的重复出现的1/2问题,肯定有话要说。您是否尝试不从代码中定义TabIndex?就我记忆所及。如果未定义,Net将自动执行此操作。是的-此选项卡索引用于尝试解决此问题。就目前情况而言,如果没有标签索引,您永远无法进入第二个框,您也会遇到同样的问题。