如何在WPF中制作Label
文字Underline
?我被困了,找不到下划线的任何财产:
<Label Name="lblUserName"
Content="Username"
FontSize="14" FontWeight="Medium" />
答案 0 :(得分:40)
在Label
否TextDecorations
中,请尝试以下操作:
<Label Width="100" Height="30">
<TextBlock TextDecorations="Underline">TestText</TextBlock>
</Label>
<强> Edit: more universal solution
强>
在这种情况下,使用Label.Content
代替Label.Tag
,因为Content属性只能设置一次:
<Label Tag="TestContent"
Width="100"
Height="30"
HorizontalContentAlignment="Center"
Background="AliceBlue">
<TextBlock TextDecorations="Underline"
Text="{Binding Path=Tag,
RelativeSource={RelativeSource Mode=FindAncestor,
AncestorType={x:Type Label}}}" />
</Label>
答案 1 :(得分:3)
以下是样式的答案。
内容:
<Label>
<TextBlock Style="{DynamicResource StyleName}">text content</TextBlock>
</Label>
风格:
<Style x:Key="StyleName">
<Setter Property="TextBlock.TextDecorations" Value="Underline" />
<Setter Property="TextBlock.FontStyle" Value="Italic" />
</Style>
答案 2 :(得分:0)
这是将样式直接应用于标签的一种方法:
<Style TargetType="Label">
<Setter Property="ContentTemplate">
<Setter.Value>
<DataTemplate>
<TextBlock Text="{Binding}" TextDecorations="Underline"/>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
这简化了标签项:
<Label>
Label 1
</Label>
<Label Grid.Row="1">
Label 2
</Label>
仅当标签的内容为文本时,此方法有效。