Нарисуйте сплошной треугольник, используя только XAML

80

Можно ли нарисовать заполненный треугольник, используя только XAML (а не код решения)?

Треугольник должен быть похож на изображение ниже, чтобы обозначить направление сортировки Ascending/Descendingвместе с кнопкой сортировки на элементе управления диаграммой:

введите описание изображения здесь

РЕДАКТИРОВАТЬ: Решение, благодаря SpeziFish :

Восходящий:

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

По убыванию:

<Polygon Points="8,0 0,5, 8,10" Stroke="Black" Fill="Black" />
sll
источник
1
Рисуем треугольник с прямоугольником? PathВместо этого вы могли бы посмотреть . Посмотрите здесь на простой пример.
erikH
@erikH: извините, но главное требование - только XAML
sll
Могу я спросить, почему вопрос был понижен?
sll 04

Ответы:

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

См. API или пример .

SpeziFish
источник
извините, главное требование - только XAML, так что с Polygon все в порядке. Как сделать его в 10 раз меньше?
sll
1
Разделите числа на десять. Числа - это просто пиксельные координаты (x, y) углов.
SpeziFish,
как вы позиционируете и вращаете? Я имею в виду, что хочу нарисовать треугольник, который будет располагаться вокруг круга (вне этого круга) на основе привязки. Есть идеи?
Джон Деметриу
для масштабирования вы можете добавить «Stretch = Fill», чтобы он масштабировался, чтобы соответствовать родительскому контейнеру, например Button.Content ..) Хорошо, только что заметил это в ответе @LongZheng :)
dba
35

Я хочу добавить их в свою коллекцию:

введите описание изображения здесь

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

введите описание изображения здесь

    <Polygon Points="0,0 5,10, 10,0" Stroke="Black" Fill="Black" />
Владимир Трифонов
источник
25

Использование путей

<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
источник
как вы позиционируете и вращаете? Я имею в виду, что хочу нарисовать треугольник, который будет располагаться вокруг круга (вне этого круга) на основе привязки. Есть идеи?
Джон Деметриу
LayoutTransform может вам помочь. Возможно, лучший выход - создать Usercontrol со свойством зависимости «Direction», чтобы вы могли размещать его так часто, как вам нужно, без перезаписи xaml
dba