




Я считаю, что Marlett (шрифт, встроенный в Windows) подходит для подобных задач.
<Button FontFamily = "Marlett" FontSize = "20" Content = "5"/>
<Button FontFamily = "Marlett" FontSize = "20" Content = "6"/>
Выход:
Я считаю, что это нормальный вариант, какие еще интересные символы есть в шрифте?
Нажмите «Пуск | Выполнить» и введите «charmap» - затем вы можете переключиться на Marlett и посмотреть. Я считаю, что это шрифт, который изначально использовался Windows 95 для визуализации всех глифов кнопок пользовательского интерфейса.
+1 Исправил мою проблему. Намного приятнее, чем каждый раз рисовать треугольник. Очень полезно знать. Спасибо!
В Silverlight для этого можно использовать шрифт «Webdings».
Согласно ответу Тарана, теперь это может быть устаревший шрифт, по крайней мере, он доступен во всех версиях Windows, начиная с 7 и выше.
@Dabblernl Я запускал это в окне Windows XP, и он тоже работал нормально.
@ Мэтт Гамильтон, что там будет для стрелок влево и вправо?
Удивительный! Было бы неплохо, если бы вы могли расширить ответ, включив в него некоторые основные значки, такие как стрелка вверх, стрелка вниз, плюс минус и т. д.
@shimmy Запустите charmap.exe, переключитесь на шрифт Marlett и скопируйте / вставьте так, как вам нравится. Здесь не так много символов, но они полезны.
@MattHamilton Да, я только что это сделал. Похоже, шрифт Marlett довольно ограничен. В любом случае это еще хорошо! Спасибо за ваш быстрый ответ!
Использование шрифта, который, как вы не можете гарантировать, будет представлен в будущих версиях ОС, кажется не очень хорошим решением.
Вы можете создать Polygon, который представляет ваши треугольники вверх и вниз, а затем установить их в качестве содержимого кнопок:
<Button>
<Polygon
Points = "300,200 450,200 375,300 300,200"
Stroke = "Black">
<Polygon.Fill>
<SolidColorBrush Color = "Black" />
</Polygon.Fill>
</Polygon>
</Button>
Вы можете настроить их, чтобы рисовать разные фигуры, но обычно это XAML, который вы использовали бы для базовой геометрии.
Никакое обсуждение этого предмета не будет полным без упоминания мини-языка геометрии (или Синтаксис разметки пути) для более компактного определения формы:
<Button>
<Path Fill = "Black" Data = "M 0 6 L 12 6 L 6 0 Z"/>
</Button>
<Button>
<Path Fill = "Black" Data = "M 0 0 L 6 6 L 12 0 Z"/>
</Button>
Первый описывает перемещение к 0,6 линии на 12,6 линии на 6,0, а затем закрытие фигуры (Z).
Также есть кривой синтаксис.
Стрелки влево и вправо соответственно: Data = "M -2 6 L 4 12 L 4 0 Z" Data = "M 2 12 L 9 6 L 2 0 Z".
@Tim Они не симметричны: /
Спасибо за объяснение :) наконец-то знаю, что означают эти символы L, M, Z !!
Если вы хотите иметь стрелку с базовым прямоугольником, вы можете использовать этот образец ...
<Button >
<Polygon Stretch = "Fill" Fill = "Black" Points = "0,0 0,30 0,10 30,10 30,-10 45,10 30,30 30,20 0,20 0,0 30,0 30,10 0,10" />
</Button>
Предпочтительный способ сделать это сейчас - использовать Символ пользовательского интерфейса Segoe. Он заменяет Марлетта и предоставляет множество полезных глифов. Вверх и вниз было бы
<Button FontFamily = "Segoe UI Symbol" Content = ""/>
<Button FontFamily = "Segoe UI Symbol" Content = ""/>
Что отображается как:
Этот шрифт предустановлен во всех версиях Windows 7+.
Этот шрифт был заменен на Segoe MDL2 Assets для Windows 10. Ссылка, предоставленная для Segoe UI Symbol, теперь ведет туда. Обратите внимание, что символ пользовательского интерфейса Segoe отсутствует в Windows 10, а активы Segoe MDL2 отсутствуют в Windows 8.1.
За этот ответ следует проголосовать больше для наглядности, поскольку в настоящее время это наиболее распространенный метод.
Ух ты. Я знаю, что это не такой "WPF-y", как рисование треугольного многоугольника вручную, но все же ... не ожидал голосов против.