你这是控件数组?你这明明就是9个不同的 TextBox 控件啊,只不过名字长得像而已。
站在用户的角度思考问题,与客户深入沟通,找到华龙网站设计与华龙网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站设计制作、做网站、企业官网、英文网站、手机端网站、网站推广、域名注册、网站空间、企业邮箱。业务覆盖华龙地区。
我是VB.Net 2010,你看看能行不。
Public Class Form1
Private MyTextBoxArray As New ArrayList
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim i As Integer
For i = 0 To 8 '利用循环语句动态加入控件数组。
Dim FirstTextBox As New TextBox
'定义文本框对象
Me.Controls.Add(FirstTextBox)
'将一个文本框控件加入到Form上
MyTextBoxArray.Add(FirstTextBox)
'将文本框控件加入到例表集合中
MyTextBoxArray.Item(i).top = i * MyTextBoxArray.Item(i).height + 20 '修改新加入控件在Form上的位置
MyTextBoxArray.Item(i).left = 100
FirstTextBox.TabIndex = i
'修改新加入控件的TabIndex值
MyTextBoxArray.Item(i).text = "TextBox" i.ToString '修改默认文本。
Next
End Sub
End Class
vb.net和vb6.0不同,无法直接使用控件数组。不过可以通过其他方式变通一下。
比如现在有10个label,要将这10个label的text属性统一设置为“这是第X个标签”(X为1-10)。
1.建立10个label,名称分别为label1、label2、label3。。label10
2.代码:
For i = 1 To 10
Me.FindControl("label" i).Text = "这是第" i “个标签”
Next i
关键点是Me.FindControl()的方法,在代码中Me.FindControl("label1").text与label1.text是一样的。