Объявление текстовых украшений, таких как Underline, Strikethrough in the Style
Как включить в определение стиля текстовые декорации, такие как Underline, Strikethrough и т.д.
<Style x:Key="UnderlinedLabel">
<Setter Property="Control.FontFamily" Value="Trebuchet MS" />
<Setter Property="Control.FontSize" Value="14" />
<!-- Next line fails -->
<Setter Property="Control.TextDecorations" Value="Underline" />
</Style>
Я знаком с использованием следующего XAML, чтобы подчеркнуть текст:
<TextBlock>
<Underline>
Underlined text
</Underline>
</TextBlock>
Однако оформление текста - это еще один стиль, я хочу, чтобы он мог определить его декларативно, как FontWeight, FontSize и т.д.
[Обновление]
Я применял этот стиль к элементу управления Label. Это была моя главная проблема. Похоже, вы не можете подчеркнуть текст в ярлыке. Перейдите в TextBlock (спасибо gix), и все хорошо.
Ответы
Ответ 1
Подчеркивание текста может выполняться либо с помощью <Underline>...</Underline>
, либо с атрибутом TextDecorations
, установленным на Underline
. Вы можете включить последнее в определение стиля:
<Style x:Key="Underlined">
<Setter Property="TextBlock.TextDecorations" Value="Underline" />
</Style>
<TextBlock Style="{StaticResource Underlined}">
Foo
</TextBlock>