Ich möchte ein rechteckiges "flaches 3D" -Look für eine meiner Kontrollschablonen erstellen. In seiner einfachsten Version bedeutet dies, dass eine untere Linie dunkler ist als die obere, und vielleicht auch etwas zwischen der linken und der rechten Linie.
Eine komplexere Version würde es mir ermöglichen, einen oder mehrere Pinsel bereitzustellen, damit Farbverläufe angewendet werden können.
Mit dem Standardelement <Border>
in WPF können Sie eine andere Stärke pro Kante angeben, aber ich kann keine Methode zur Angabe mehrerer Pinsel finden.
Also, wie kann ich den gewünschten Effekt so einfach wie möglich erzeugen?
BEARBEITEN Es wurde vorgeschlagen, dass ich ein Beispiel für die Verwendung dieses Elements posten möchte. Persönlich wäre ich glücklich, einen Stil oder eine Benutzerkontrolle zu haben. Das Benutzersteuerelement könnte so verwendet werden:
%Vor%Oder vielleicht noch einfacher:
%Vor%Das sind nur Ideen. Jede vernünftige, prägnante Lösung ist willkommen.
Hier ist eine Lösung, die ich entwickelt habe, die das meiste von dem erreicht, was ich will. Es bietet keine vollständige Kontrolle über alle vier Seiten unabhängig, aber es gibt die rechteckige flache 3D-Ansicht, die ich will.
So sieht es aus:
Fügen Sie dies in Kaxaml ein, um es selbst zu sehen:
%Vor%Hoffe, dass jemand anders hilft. Ich bin immer noch auf der Suche nach innovativen Lösungen für dieses Problem, also poste weiter und ich akzeptiere eine bessere Antwort als diese.
Ehrlich gesagt wäre der einfachste Weg, Schichttechniken zu verwenden. Zum Beispiel erstellen Sie ein Raster wie folgt:
%Vor%Ich denke, Sie haben die Idee. Dies ist wahrscheinlich der einfachste Weg, dies zu tun. Sie könnten dies als Vorlage einrichten und so verwenden:
%Vor%Sie können auf die PresentationFramework.Classic -Assembly verweisen und dann
verwenden %Vor%Ich habe diese Technik zum Betrachten von Kontrollvorlagen , um zu sehen, wie Standard-Schaltflächen gestaltet wurden