2012-04-02 5 views
1

Ich versuche, herauszufinden, wie ein UI-Design auf meinem Hauptfenster Anwendung, die wie folgt aussieht:Wie kann ich eine dreieckige Grafik oben links in einem WPF-Fenster überlagern?

Objekt enter image description here

Die Basis ist ein DockPanel - Ich weiß, dass ich den DockPanel Hintergrund kann eingestellt eine Grafik dort, aber der Bereich Top Dock deckt immer den Dreiecksbereich des Hintergrunds ab. Ich kann nicht herausfinden, wie man den oberen Dock-Bereich, der die Schaltflächen enthält, hinter der Dreiecksgrafik "versteckt". Kennt jemand eine gute Technik, um diesen Effekt zu erzielen?

Antwort

2

erweitern Codewarrior Antwort, in einem Raster, um die DockPanel setzen, und das Dreieck als ein anderes Kind das Raster mit einem höheren z-Index, können Sie Zeilen und Spalten verwenden oder verwenden Sie einfach vertikale und horizontale Ausrichtung.

+1

Ausgezeichneter Vorschlag. Einfach zu implementieren, ohne die bereits in meiner Anwendung vorhandene Struktur zu ändern. Vielen Dank. – PIntag

4

Sie könnten ein Raster mit einer Zeile verwenden, um Ihre Schaltflächenleiste am oberen Rand und eine Spalte zum Einschränken des dreieckigen Elements zu enthalten. Persönlich würde ich den dreieckigen Bereich und die Buttonbar separate Steuerelemente machen.

bei dieser Antwort Werfen Sie einen Blick ich mit einem ähnlichen Ergebnis ein paar Monaten wieder auf eine andere Frage gestellt: How to get this window layout in WPF?

+1

Dank CodeWarrior. Schöne Technik, aber ich konnte nicht so arbeiten, wie ich es wollte, bevor ich Chens Antwort sah, die mit der aktuellen Struktur meiner Anwendung viel einfacher zu implementieren war. – PIntag

+0

Gut, dass Sie es funktioniert haben. Danke für das Update. – CodeWarrior

+0

Haben Sie Ideen, wie Sie den Dropshadow-Effekt für die Dreieckskante erzeugen können? – PIntag

Verwandte Themen