Wie alle Controls vom TableLayoutPanel auflisten?

23/02/2009 - 01:11 von Hartmut Callies | Report spam
Hallo,
auf meiner Form habe ich mehrere TableLayoutPanel. Darin sind ComboBoxen,
Labels und TextBoxen enthalten.
Wie kann ich mir diese ComboBoxen, Labels und TextBoxen auflisten lassen?

Das Auflisten des TableLayoutPanel habe so realisert:

For Each objControl As Control In frmOrder.TabControlPanel1.Controls
Select Case objControl.GetType.Name
Case "TableLayoutPanel"
' hier weiter
End Select
Next

Ziel ist es, dass ich die Inhalte aller Eingabefelder löschen will.

Hartmut Callies
 

Lesen sie die antworten

#1 Peter Fleischer
23/02/2009 - 06:49 | Warnen spam
"Hartmut Callies" schrieb im Newsbeitrag
news:%

auf meiner Form habe ich mehrere TableLayoutPanel. Darin sind ComboBoxen,
Labels und TextBoxen enthalten.
Wie kann ich mir diese ComboBoxen, Labels und TextBoxen auflisten lassen?

Das Auflisten des TableLayoutPanel habe so realisert:

For Each objControl As Control In frmOrder.TabControlPanel1.Controls
Select Case objControl.GetType.Name
Case "TableLayoutPanel"
' hier weiter
End Select
Next

Ziel ist es, dass ich die Inhalte aller Eingabefelder löschen will.



Hi Hartmut,
durchlaufe die ControlCollection rekursiv, z.B. so für das gesamte Formular:

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) _
Handles Button1.Click
Loeschen(Me.Controls)
End Sub

Sub Loeschen(ByVal cc As Control.ControlCollection)
For Each c As Control In cc
If c.GetType Is GetType(TextBox) Then
c.Text = "<leer>"
End If
Loeschen(c.Controls)
Next
End Sub

End Class


Viele Grüsse
Peter

Ähnliche fragen