投稿者 るきお  (社会人) 投稿日時 2010/8/18 12:45:02
>・フィールドの初期化を派生クラス→基本クラスの順序で行う
なるほどです。
Dim TextBoxs() As TextBox = {TextBox1, TextBox2, TextBox3, TextBox4, TextBox5} 'コントロール配列  

これが実行されるときはまだ、TextBox1~5がまだNothingなんですね。


回避策として名前で指定する方法も紹介します。
  
Private Sub Form1_Load(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles MyBase.Load

    For i As Integer = 1 To 5
        Me.Controls("TextBox" & i).Text = "ここに入力"
    Next

End Sub

Private Sub Button1_Click(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles Button1.Click

    For i As Integer = 1 To 5
        Me.Controls("TextBox" & i).Text = String.Empty
    Next

End Sub

Private Sub Button2_Click(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles Button2.Click

    Dim sum As Integer

    For i As Integer = 1 To 5
        sum += CInt(Me.Controls("TextBox" & i).Text)
    Next i

    TextBox6.Text = sum

End Sub