Я пытаюсь использовать символ Wingdings в качестве изображения в элементе управления, и я пытаюсь сделать его вертикально центрированным в текстовом поле (приложение UWP). Я помещаю вокруг него видимую границу и тот факт, что символ не центрирован по вертикали заметно и разрушает то, что я собираюсь сделать. Если возможно, это избавит меня от необходимости делать нестандартную графику, а поскольку размеры крыльев можно изменять, мою графику можно было бы легко изменить. Вот почему я не хочу вручную регулировать высоту, пока она не будет выглядеть по центру.
Большинство крыльев не центрированы по вертикали, но иногда используются в качестве графики, поэтому мне интересно, можно ли это сделать с разумными усилиями. Хороший способ сделать это с помощью xaml был бы идеальным, но было бы хорошо измерить метрику шрифта, а затем настроить высоту текстового блока.
Вот пример проблемы. Символ жесткого диска не отцентрирован по вертикали в рамке.
<Border BorderBrush="Black" BorderThickness="10" Background="White" HorizontalAlignment="Center" VerticalAlignment="Center">
<TextBlock Text=";" FontFamily="Wingdings" FontSize="230"/>
</Border>
РЕДАКТИРОВАТЬ - изменен пример, чтобы очистить и использовать символ жесткого диска Wingdings, потому что череп и кости расположены достаточно близко к вертикальному центру, чтобы запутать вопрос. Символ привода явно не отцентрирован по вертикали. Моя цель - автоматически центрировать его по вертикали даже при изменении размера шрифта. Я вижу, что XAML не может этого сделать, но мне интересно, существуют ли какие-то запросы метрик шрифтов / текста, которые я мог бы использовать для этого.
РЕДАКТИРОВАТЬ 2 - добавление изображения (приведенный выше XAML, который имеет те же проблемы, что и все предлагаемые XAML (-ы):
Я пытаюсь сделать так, чтобы центр символа находился в центре текстового блока