Намалюйте одноколірний трикутник, використовуючи лише XAML


80

Чи можна намалювати заповнений трикутник, використовуючи лише XAML (а не код, що стоїть за рішенням)?

Трикутник повинен бути таким, як на зображенні нижче, щоб представляти напрямок сортування Ascending/Descendingразом із кнопкою сортування на елементі керування діаграмою:

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

EDIT: Рішення, завдяки 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" />

1
Малювання трикутника прямокутником? Ви можете Pathзамість цього заглянути . Шукайте тут базовий приклад.
erikH

@erikH: вибачте, основною вимогою є лише XAML
sll

Чи можу я запитати, чому питання було принижено?
sll

Відповіді:


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

Див. API або Приклад .


вибачте, основною вимогою є лише XAML, тому багатокутник добре. Як зменшити його в 10 разів?
sll

1
Розділіть числа на десять. Цифри легко представляють собою піксельні координати (x, y) кутів.
SpeziFish

як ви все ж розміщуєте і обертаєте? Я маю на увазі, що хочу намалювати трикутник, який буде розташовуватися навколо кола (поза цим колом) на основі прив’язки. Будь-які ідеї?
Джон Деметріу

для масштабування ви можете додати "Stretch = Fill", щоб він масштабувався відповідно до батьківського контейнера, наприклад Button.Content ..) Гаразд, просто помітив це у відповіді @LongZheng :)
dba


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 "/>

як ви розташуєте і обертаєте? Я маю на увазі, що я хочу намалювати трикутник, який буде розташовуватися навколо кола (поза цим колом) на основі прив’язки. Будь-які ідеї?
Джон Деметріу

LayoutTransform може вам допомогти. Можливо, найкращий постріл - створити UserControl із властивістю залежності 'Direction', щоб ви могли розміщувати його так часто, як вам потрібно, без переписування xaml
dba
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.