2012-10-07 45 views
6

En una aplicación de la Tienda Windows, ¿hay alguna forma de aplicar un efecto StrikeThrough al contenido de un TextBlock? Si no existe, un RichTextBlock o cualquier control similar haría. No importa si es a través de XAML o programáticamente (C#), pero prefiero a través de XAML para que se muestre en el diseñador.Efecto StrikeThrough en un TextBlock

He encontrado esto entre la documentación de Microsoft, pero no saben cómo usarlo: http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.text.itextcharacterformat.strikethrough.aspx

Respuesta

13

aplicaciones Windows Store tienen su propio espacio de nombres de control (System.Ui.Xaml.Controls). Verá que las aplicaciones TextBlock para Windows Store no tienen una propiedad TextDecoration: TextBlock documentation.

El .NET 4.5 TextBlock "completo" tiene una propiedad TextDecoration: .Net 4.5 WPF TextBlock Documentation.

Usted puede hacer esto de una manera "hacky" de esta manera:

<Grid Height="30"> 
     <TextBlock Text="This is a test" FontSize="22" Height="34" HorizontalAlignment="Center" Foreground="White" /> 
     <Line Stretch="Fill" Stroke="white" StrokeThickness="2 " X1="1" Width="120" VerticalAlignment="Center" HorizontalAlignment="Center" /> 
    </Grid> 
+1

Gracias por la punta. Agregué un 'Margin =" 0,10,0,0 "' y la línea aparece a la derecha del texto. También eliminó las propiedades 'HorizontalAlignment' y' Width' para que llene la celda principal y atraviese todo el texto. – dcastro

3

Parece que no es posible, después de todo:

"no vamos a poder incluya la clase TextDecoration para la versión final de la estructura XAML para Windows 8. Esto significa que no podrá usar la función de tachado, pero igual será capaz de subrayar el texto a través de la clase Subrayado. "

(http://social.msdn.microsoft.com/Forums/en-CA/winappswithcsharp/thread/cba0c363-60da-4e4e-9fc1-93f7c3658aff)

Sin embargo, Microsoft está trabajando en esto:

"Esto es una limitación conocida en la historia de texto XAML en el Windows 8 vista previa para desarrolladores En el lado positivo esto. es un área con las mejoras planificadas que sucederán pronto en el futuro y esperamos resolver este problema ".

(http://social.msdn.microsoft.com/Forums/en-US/winappswithcsharp/thread/d5362fe2-48f6-448d-92ae-25216345c46d)