看板 Visual_Basic 關於我們 聯絡資訊
請輸入專案類型(網站專案或者應用程式專案): 迴圈建立的TEXTBOX NAME 問題 我有一個迴圈是這樣的 For i As Integer = 1 To 10 Dim tb As New TextBox tb.Name = "sizen" + i.ToString tb.Top = 20 tb.Left = i * 50 + 10 tb.Width = 40 Me.Panel1.Controls.Add(tb) Next 這樣會建立10個TEXTBOX 而每個NAME會是 sizen1 sizen2 sizen3 sizen4 .... sizen10 但是我如果在FOR後面使用sizen1就會說未宣告 該怎麼寫才能正常使用建立出來的TEXTBOX呢!? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.229.88.231
MOONRAKER:以我的想法,可能直接宣告個textbox(10)陣列 06/04 02:56
MOONRAKER:每一個textbox分別new,賦予屬性,用的時候就當陣列元素 06/04 02:57
MOONRAKER:用就好 06/04 02:57
salagadoola:用Me.Panel1.FindControl("sizen1")把它找出來用? 06/04 03:22
salagadoola:有找到就做事,找到Nothing就做錯誤處理 06/04 03:23
Peruheru:推薦使用物件陣列的方法,尤其當做的事情類似時 06/04 13:31
Peruheru:可能存取的最外圍宣告textbox陣列 sizen(9) = textbox 06/04 13:32
Peruheru:然後用迴圈依序宣告sizen(0) = new textbox() 06/04 13:33
Peruheru:依序賦予其屬性之後再使用Controls.Add(sizen(0)) 06/04 13:33
Peruheru:來加入其至目標框架,然後之後就可以使用sizen(0)來直接 06/04 13:34
Peruheru:存取第一個textbox了 06/04 13:34
Peruheru:.net並非無法使用物件陣列,只是使用方法不同而已 06/04 13:35
Peruheru: *控制項陣列 06/04 15:12
jimpop:成功了~~使用陣列比較好~~謝謝各位!!!! 06/06 23:07