2010-08-18 51 views
0

正在使用C#,VS-2005运行控制索引问题

上午产生,如TextBox控件运行时间和作品就可以了它不错,但索引问题。我的代码如下。

// tbpoint在GlobalArea中声明。

int i = 0;

TextBox tb = new TextBox();

tb.Location = tbpoint;

tb.Size = new size(970,60);

tb.Name =“Tbox”+ i.tostring();

tb.Keypress + = new KeypressEventHandler(tbb_Keypress);

tbpoint + = 70;

i ++;

this.panel1.Controls.Add(tb);

上面的代码调用EnterKeypress事件,并且工作正常,但问题是索引生成的文本框。该索引不增加1.

我该如何解决它。请帮帮我。

回答

0

的必须声明的变量i也是在类主体(你所说的“全球范围”)。否则,我会在每个方法调用重置为零。

+0

thx先生,它的作品 另一个问题是先生我如何得到该控件的最后一个索引放在一定的条件或setfocus在另一个再次控制thx for ur feedback – mahesh 2010-08-18 16:03:11

+0

SendKeys.Send(“{TAB}”); – codymanix 2010-08-19 08:54:47

+0

thx for ur feedback sir, 但是在运行时进行控制并且通过enterkeypressevent控制哪个控件有null或者没有。我想把条件放在像tbox5.text =“”那样的null的运行时控制上,然后将焦点设置为textbox2.text – mahesh 2010-08-20 16:44:06

0

如果按索引表示选项卡索引,则需要为动态控件自行设置。

System.Windows.Forms.Control.TabIndex

+0

thx先生,对于你的反馈,还有一个问题我已阅读由你提供的URL。但如果我把tabindex放在特定的运行时控制上,这个控制是通过新的位置递增而不是它的工作或不是 – mahesh 2010-08-20 15:42:53

+0

我很抱歉,但我很难理解你的意思...... :( – asawyer 2010-08-20 20:42:12

+0

假设,如果我已经提供了标签像tb.TabIndex = 1这样的索引,并且在运行时,它会根据用户的意愿增加enterkeypress事件,它可能会有四个文本框或五个不知道它是否满足用户的需求现在,如果我们必须找出最后一个文本框的值为null,那么setfocus另一个控制如IF tbox04.text =“”然后textbox2.setfocus是在panel1下面 – mahesh 2010-08-21 06:25:21