WPF TextBlock下划线

时间:2011-04-09 00:22:05

标签: c# visual-studio windows-phone textblock underline

我有textblock width500,但我的字符串只是说“H”,但我希望underline整个textblock宽度不只是在H下我能做什么?

4 个答案:

答案 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>