Zeichnen Sie einfarbiges Dreieck nur mit XAML

80

Ist es möglich, ein ausgefülltes Dreieck nur mit XAML zu zeichnen (kein Code hinter der Lösung)?

Das Dreieck sollte wie im Bild unten aussehen, um die Sortierrichtung Ascending/Descendingzusammen mit einer Sortierschaltfläche in einem Diagrammsteuerelement darzustellen :

Geben Sie hier die Bildbeschreibung ein

EDIT: Die Lösung dank SpeziFish :

Aufsteigend:

<Polygon Points="0,0 8,5, 0,10" Stroke="Black" Fill="Black" />

Absteigend:

<Polygon Points="8,0 0,5, 8,10" Stroke="Black" Fill="Black" />
sll
quelle
1
Ein Dreieck mit einem Rechteck zeichnen? Sie könnten Pathstattdessen untersuchen. Schauen Sie sich hier für ein einfaches Beispiel.
EricH
@erikH: Entschuldigung, die Hauptanforderung ist nur eine XAML
sll
Darf ich fragen, warum die Frage abgelehnt wurde?
sll

Antworten:

104
<Polygon Points="0,0 80,50, 0,100" Stroke="Black" Fill="Black" />

Siehe API oder Beispiel .

SpeziFish
quelle
Entschuldigung, die Hauptanforderung ist nur eine XAML, also ist Polygon in Ordnung. Wie macht man es 10 mal kleiner?
sll
1
Teilen Sie die Zahlen um zehn. Die Zahlen sind leicht die Pixelkoordinaten (x, y) der Ecken.
SpeziFish
Wie positionierst und drehst du dich? Ich meine, ich möchte ein Dreieck zeichnen, das basierend auf der Bindung um einen Kreis (außerhalb dieses Kreises) positioniert wird. Irgendwelche Ideen?
John Demetriou
für die Skalierung können Sie „Stretch = Fill“ hinzufügen, so dass es den übergeordneten Container passen, zB Button.Content ..) Ok skaliert wird, entdeckte es nur in der Antwort von @LongZheng :)
dba
34

Ich möchte diese zu ihrer Sammlung hinzufügen:

Geben Sie hier die Bildbeschreibung ein

    <Polygon Points="5,0 10,10, 0,10" Stroke="Black" Fill="Black" />

Geben Sie hier die Bildbeschreibung ein

    <Polygon Points="0,0 5,10, 10,0" Stroke="Black" Fill="Black" />
Vladimir Trifonov
quelle
24

Pfade verwenden

<Path Width="33" Height="37" Stretch="Fill" Stroke="Black" Fill="Black" Data="F1 M 319.344,237.333L 287.328,218.849L 287.328,255.818L 319.344,237.333 Z "/>
<Path Width="33" Height="37" Stretch="Fill" Stroke="Black" Fill="Black" Data="F1 M 287.328,237.333L 319.344,255.818L 319.344,218.849L 287.328,237.333 Z "/>
LongZheng
quelle
Wie positionierst und drehst du dich? Ich meine, ich möchte ein Dreieck zeichnen, das basierend auf der Bindung um einen Kreis (außerhalb dieses Kreises) positioniert wird. Irgendwelche Ideen?
John Demetriou
LayoutTransform könnte Ihnen helfen. Vielleicht ist die beste Möglichkeit, ein Benutzersteuerelement mit einer Abhängigkeitseigenschaft 'Richtung' zu erstellen, damit Sie es so oft platzieren können, wie Sie es benötigen, ohne das xaml
dba am