Laden...

Template zur Laufzeit ändern?

Erstellt von AlexanderT vor 14 Jahren Letzter Beitrag vor 14 Jahren 1.818 Views
AlexanderT Themenstarter:in
70 Beiträge seit 2009
vor 14 Jahren
Template zur Laufzeit ändern?

Hi,
Ich experimentiere gerade mit Rahmenlosen Fensern und habe im zuge dessen meinen Eigenen Maximize/Normalize Button erstellt. Nun zu meiner Frage:

Wie kann ich das Template zur Laufzeit ändern? MaximizeButton.Template = ?

Was muss dahin? ich komme nicht drauf.

Gruß

Alex

3.430 Beiträge seit 2007
vor 14 Jahren

Hallo AlexanderT,

das müsste so funktionieren


MaximizeButton.Template = this.FindResource("MyTemplate") as ControlTemplate;

Gruss
Michael

AlexanderT Themenstarter:in
70 Beiträge seit 2009
vor 14 Jahren

Sag ruhig Alex ;D

DANKE!

Du hast meinen Tag gerettet, jetzt kann ich mich schlafen legen, sowas lässt mir einfach keine Ruhe 😄

P.S.:


MaximizeButton.Template = (ControlTemplate)this.FindResource("NormalizeButton");
MaximizeButton.Template = this.FindResource("NormalizeButton") as ControlTemplate;

wo liegt der Unterschied? Gibt es überhaupt einen?

EDIT:

Schon in der FAQ gefunden(warum suche ich da eigentlich nicht zuerst?)
fürs Protokoll:
[Tipp] Casten aber richtig: Begriffe wie Cast / is / as

H
81 Beiträge seit 2008
vor 14 Jahren
MaximizeButton.Template = this.FindResource("NormalizeButton") as ControlTemplate;

Liefert null zurück wenn die Konvertierung nicht geht.

MaximizeButton.Template = (ControlTemplate)this.FindResource("NormalizeButton");

Hier gibts ne Exception.