Wie kann ich einen Stil auf das Window Control in WPF anwenden?

7

Ich setze einen Stil für das Fenster in App.xaml wie:

%Vor%

Wobei ich grundsätzlich möchte, dass jeder WindowStyle-Eigenschaftswert auf None gesetzt ist (um den Standard-Windows-Rahmen und Rahmen zu entfernen); Aber es funktioniert nicht.

Was fehlt mir hier?

    
Andreas Grech 26.03.2009, 01:41
quelle

2 Antworten

19

Ich glaube, dass Sie den Stil benennen und auf jedes Fenster wie folgt anwenden müssen.

In app.xaml / resources ..

%Vor%

Dann in der window.xaml ..

%Vor%

Das sollte funktionieren, aber das einfache Anwenden des Stils mit TargetType für Window in der Ressource wird das Fenster nicht zwingen, diesen Stil zu verwenden, obwohl es für andere Elemente zu funktionieren scheint.

Bearbeiten:
Gefunden einige Informationen in Bezug auf das Anwenden von Standardstilen auf ein Fensterelement ..

  

Wenn Sie einen TargetType angeben, alle   Instanzen dieses Typs haben die   Stil angewendet. Allerdings abgeleitete Typen   wird nicht ... es scheint. & lt; Stil   TargetType="{x: Typfenster}" & gt; wird nicht   arbeite für alle deine Gewohnheiten   Ableitungen / Fenster. & lt; Stil   TargetType="{x: Typ lokal: MyWindow}" & gt;   gilt nur für MyWindow. Also die   Optionen sind

     

Verwenden Sie einen Keyed Style, den Sie als angeben   die Style-Eigenschaft jedes Fensters, das Sie   möchte den Stil anwenden. Der Designer   zeigt das formatierte Fenster an.

Aus der Frage: Wie Festlegen des standardmäßigen WPF-Fensterstils in app.xaml?

Die Person, die die Frage beantwortet hat, hatte eine interessante Idee, von einem Basisfenster zu erben, auf das der Stil angewendet wurde.

    
Quintin Robinson 26.03.2009, 02:06
quelle
7

Ich weiß, dass diese Frage ziemlich alt ist, aber ich werde trotzdem antworten.

Hier ist der Code, der in C # 4.0 für mich funktioniert. Es kopiert nur den Stil für alle Unterklassen im Ressourcenverzeichnis.

%Vor%

Nun sollte Ihr Stil von App.xaml für alle Fenster funktionieren.

ps. Ja, ich weiß, das ist nicht der sauberste oder schnellste Weg, aber es funktioniert. :)

    
Andrew Mikhailov 02.10.2012 10:15
quelle

Tags und Links