TextBox-Array in ASP.NET-Seite?

Hallo,

ich habe immer wieder das Problem, dass ich in einer ASP.NET-Page viele TextBoxen oder Labels habe, die ich aber gerne als Array hätte, um deren Eigenschaften besser ansprechen zu können. Bis jetzt konnte ich nur die Möglichkeit sehen, diese Elemente zur Laufzeit zu generieren anstatt im Designer. Weiß jemand, ob es auch möglich ist, im Designer irgendwie klarzumachen, dass ich diese WebControls als TextBox[] haben will und nicht als TextBox, TextBox, TextBox, […]
?

Viele Grüße
Alexander

hallo alex,

soweit ich weiß(bitte bei mülltonnen information einschreiten…), war dieses textbox-array geschichte was typisch vb6-mäßiges, das es in „.net“ nicht mehr gibt.
soweit ich weis, gibt es sowas generell nicht…

so kannst du auf alle textboxen deiner seite zugreifen:

Dim ctl As Control
For Each ctl In Page.Controls(1).Controls
If TypeOf ctl Is TextBox Then
CType(ctl, TextBox).Text = „“
End If
Next

hoffe es hilft

viele grüße

rasta

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Rasta,

gute Idee, das wäre eine Möglichkeit, allerdings nicht am schnellsten, wenn man auf einzelne zugreifen will, da ja dann jedes mal alle Controls „durchgerattert“ werden.

Natürlich kann ich einmal in der Pageklasse ein neues Array auf diese Weise anlegen und das dann im Weiteren verwenden.

Danke und Gruß
Alexander

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo nochmal,

jetzt möchte ich auf die TextBoxen zugreifen, ähnlich wie von dir beschrieben, also mit Hilfe der Controls-Collection. Allerdings habe ich die TextBoxen in einer Tabelle untergebracht und will über deren Controls auf die Elemente zugreifen. Dazu muss doch „EnableViewState“ der Tabelle auf true stehen, wobei auch die ViewStates aller Childs ebenfalls gespeichert werden, oder? Leider funktioniert das hier aber nicht. Ich habe zur Laufzeit TableRows geadded. Schaue ich mir aber von dieser Tabelle die Rows-Collection an, dann sehe ich „Count == 0“. Irgendwie scheint die ViewState also doch nicht abgespeichert worden zu sein, denn sonst würden die TableRows noch vorhanden sein und ich könnte auf die Zellen zugreifen u.s.w.

Habe ich etwas übersehen, hat jemand einen Tip für mich?

Viele Grüße
Alexander

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Nur, falls es andere interessiert, ich habe auch versucht, die Controls-Collection der Page-Klasse auszuwerten, ebenfalls ohne Erfolg, obwohl die TextBoxen direkt auf der Seite standen.

Ich habe herausgefunden, dass ich Page.FindControl benutzen muss!!

Danke und Gruß
Alexander