フォーム上のコントロールを初期化

フォーム上のコントロールを全て初期状態にします。例えば、テキストボックスを未入力状態にしたりします。

グループボックスなどコントロールを子の持つコントロールも存在するので、注意が必要です。

Public Shared Sub ClearControlsContents(ByVal colCtrlCollection As Control.ControlCollection)


    '入力系/表示系コントロールの表示データを全て初期化する
    For Each objCtrl As Control In colCtrlCollection

        '子にコントロールを持つコントロールは、再帰的にクリア処理を呼び出す
        If TypeOf objCtrl.HasChildren Then
            Call ClearControlsContents(objCtrl.Controls)
        End If

        'フォーム上に直接配置されたコントロール
        If TypeOf objCtrl Is TextBoxBase Then
            objCtrl.Text = String.Empty
        Else
            ' その他初期化したいコントロールの初期化を配置
        End If

    Next

End Sub

プロジェクトで共通化しておくと非常に重宝する関数になります。