39

スタイル定義に下線、取り消し線などのテキスト装飾を含めるにはどうすればよいですか:

<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)、すべて問題ありません。

4

1 に答える 1

59

テキストに下線を引くには、属性を に設定する<Underline>...</Underline>か、TextDecorations属性を に設定しUnderlineます。後者をスタイル定義に含めることができます。

<Style x:Key="Underlined">
    <Setter Property="TextBlock.TextDecorations" Value="Underline" />
</Style>

<TextBlock Style="{StaticResource Underlined}">
    Foo
</TextBlock>
于 2009-02-16T05:09:43.963 に答える