我有textblock
width
说500
,但我的字符串只是说“H”,但我希望underline
整个textblock
宽度不只是在H下我能做什么?
答案 0 :(得分:183)
您应该使用TextBlock的属性“TextDecorations”。像那样:
<TextBlock Text="H" TextDecorations="Underline"/>
答案 1 :(得分:20)
只需加上我的2美分,通过此代码可以在运行时实现与Talia的答案相同的效果:
YourTextBlock.TextDecorations = System.Windows.TextDecorations.Underline;
由于某种原因,VS2010没有为RHS显示Intellisense,但它编译并正确运行。
答案 2 :(得分:6)
<TextBlock VerticalAlignment="Bottom"
HorizontalAlignment="Center"
Margin="40"
Height="40"
FontSize="16"
Tapped="TextBlock_Tapped"
Text="Text"
Foreground="{StaticResource LightBlue}">
<Underline>
<Run Text="Text"/>
</Underline>
</TextBlock>
答案 3 :(得分:0)
您最好的选择可能是使用位于文本块正下方的矩形,其宽度始终是文本块的宽度。像这样:
<DockPanel LastChildFill="False">
<TextBlock DockPanel.Dock="Top" x:Name="blockToUnderline" Text="H" Width="76" />
<Rectangle DockPanel.Dock="Top" Fill="Black" Height=1 Width="{Binding ElementName=blockToUnderline, Path=ActualWidth}" />
</DockPanel>