各位大大:在VB中我们可以在程序开始初始化一批控件的某个属性代码如下:
for i=0 to 10
if i/3=int(i/3) then
label1(i).text="hahah"
end if
next i
而在VB.NET中 创建不出控件数组
类似以上的功能该如何完成,望高手不吝赐教。
------解决思路----------------------
Public Class Form1
Private labelArray() As Label
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.labelArray = New Label() {Me.Label1, Me.Label2, Me.Label3, Me.Label4, Me.Label5, _
Me.Label6, Me.Label7, Me.Label8, Me.Label9, Me.Label10, _
Me.Label11}
For i = 0 To 10
If i / 3 = Int(i / 3) Then
Me.labelArray(i).Text = "hahah"
End If
Next i
End Sub
End Class
------解决思路----------------------
将这一些视作数组的控件放入到同一个容器中,例如Panel中。
For Each c As Control In Panel1.Controls //遍历容器中的所有控件
Dim s As Label = TryCast(c, Label) //尝试将控件转换成所需的控件类型(如:Label),转换失败时返回Nothing。
If Not s Is Nothing Then
s.Text = "hahah"
End If
Next