2010-08-18 15 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