c# visual-studio windows-phone textblock underline

c# - WPF TextBlock Underline



visual-studio windows-phone (4)

Debe usar la propiedad "TextDecorations" del TextBlock. Como eso:

<TextBlock Text="H" TextDecorations="Underline"/>

Tengo un textblock de textblock de width digamos 500 , pero mi cadena es solo "H", pero quiero underline todo el ancho del textblock no solo debajo de H, ¿qué puedo hacer?


Probablemente, lo mejor sería utilizar un rectángulo situado inmediatamente debajo del bloque de texto, cuyo ancho es siempre el ancho del bloque de texto. Me gusta esto:

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


Solo para agregar mis 2 centavos, el mismo efecto que la respuesta de Talia se puede lograr en el tiempo de ejecución a través de este código:

YourTextBlock.TextDecorations = System.Windows.TextDecorations.Underline;

Por alguna razón, VS2010 no muestra Intellisense para RHS, pero compila y funciona correctamente.


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