Zur Laufzeit auf Eigenschaften eines Web-Controls zugreifen

09/04/2008 - 16:39 von Jan | Report spam
Hallo NG,

ich möchte eine Routine schreiben, mit der man die Eigenschaften von
beliebigen Web-Steuerelementen zur Laufzeit àndern kann, wenn die ID des
Steuerelements als String vorliegt.

Vielleicht ist das sogar dasselbe Problem wie aus dem Beitrag "Auf
Eigenschaften eines Webbenutzersteuerelementes zugreifen" von Klaus, ich bin
mir aber nicht sicher.

Also ich identifiziere mein Control mit

Control unknownTypeControl = Page.FindControl("name");

Jetzt bekomme ich ein Control-Objekt, um aber Eigenschaften wie BorderWidth
usw. zu àndern, bràuchte ich ein TextBox- oder eine DropDownList-Objekt oder
was immer es jeweils ist.

Jetzt gàbe es die Möglichkeit, auf alle möglichen Typen zu prüfen, etwa so:

if (new TextBox().GetType() == unknownTypeControl.GetType())
{
TextBox currControl = (TextBox)unknownTypeControl;
currControl.BorderWidth = 3;
}

das geht auch, erscheint mit aber recht umstàndlich.

Vielleicht weiß jemand, wie man das besser machen kann?

Viele Grüße

Jan
 

Lesen sie die antworten

#1 Thomas Bandt
09/04/2008 - 17:07 | Warnen spam
Jan schrieb:
Jetzt gàbe es die Möglichkeit, auf alle möglichen Typen zu prüfen, etwa so:

if (new TextBox().GetType() == unknownTypeControl.GetType())
{
TextBox currControl = (TextBox)unknownTypeControl;
currControl.BorderWidth = 3;
}

das geht auch, erscheint mit aber recht umstàndlich.

Vielleicht weiß jemand, wie man das besser machen kann?



Das ist nicht umstàndlich, sondern eigentlich sogar
der *imho* sinnvollste Weg.

Gruß, Thomas [MVP ASP/ASP.NET]
http://www.69grad.de - Beratung, Entwicklung
http://www.dotnetjob.de - .NET-Stellenbörse
https://www.xing.com/net/asp.net/ - ASP.NET bei XING
http://blog.thomasbandt.de - Thomas goes .NET

Ähnliche fragen