2015-05-15 34 views
1

我有几个控件,我在运行时创建,然后添加到某种形式的容器(在我的情况下面板)。在创建控件时,我还设置了每个控件的TabIndex。现在,我从最后一个控件(TextBox#4)开始并继续前进,以便第一个控件最终结束于顶部。 enter image description hereTabIndex动态创建

我考虑到我在反向设置TabIndex时这样做,但是当我实际运行的代码,然后按Tab键总是从第4跳 - >#3 - >#2 - >#1(按照它们创建的顺序,而不是像我想要的那样从上到下)。在调试时,我可以看到每个控件TabIndex设置正确(TextBox#1.TabIndex = 1,...,TextBox#4.TabIndex = 4)我是否错过了某些内容或是否存在某种解决方法?

代码:

Panel pnl = new Panel(); 
(for int i = fields.Count -1; i <= 0; i--) 
{ 
    Label lbl = new Label(); 
    //do some stuff with label 
    lbl.TabIndex = (i + 1); 
    pnl.Controls.Add(lbl); 
} 
+0

我假设我<= 0是错字吗? :)添加后可能会工作设置TabIndex。怀疑将它添加到面板中会覆盖您的代码 –

回答