2012-10-07 14 views
6

Czy w aplikacji Sklepu Windows istnieje jakiś sposób zastosowania efektu Uderzenia w odniesieniu do zawartości TextBlock? Jeśli tak nie jest, może to być RichTextBlock lub dowolne podobne sterowanie. Nie ma znaczenia, czy jest to przez XAML, czy programowo (C#), ale wolałbym przez XAML, aby był wyświetlany w projektancie.Efekt uderzenia na TextBlock

Znalazłem to między dokumentacji Microsoftu, ale nie wiem, jak go używać: http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.text.itextcharacterformat.strikethrough.aspx

Odpowiedz

13

sklepowych aplikacje mają swoją własną przestrzeń nazw sterowania (System.Ui.Xaml.Controls). Zobaczysz, że aplikacje TextBlock dla Windows Store nie mają właściwości TextDecoration: TextBlock documentation.

"Pełna" .NET 4.5 TextBlock ma właściwość TextDecoration: .Net 4.5 WPF TextBlock Documentation.

Można to zrobić w „hacky” sposób tak:

<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

Dzięki za cynk. Dodałem "Margin =" 0,10,0,0 "", a wiersz pojawi się w tekście. Usunięto również właściwości "HorizontalAlignment" i "Width", aby wypełnić komórkę nadrzędną i przejść przez cały tekst. – dcastro

3

Wydaje się, że nie jest to możliwe po wszystkim:

„Nie będziemy w stanie uwzględnij klasę TextDecoration dla ostatecznego wydania wersji XAML dla systemu Windows 8. Oznacza to, że nie będziesz w stanie użyć funkcji przekreślenia, ale nadal będziesz w stanie podkreślić tekst za pomocą klasy Podkreślenie. "

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

Jednak Microsoft pracuje nad tym:

„Jest to znane ograniczenie w XAML historii tekstu w Windows 8 podglądu deweloperem na jasną stronę tego. jest obszarem, w którym planowane są wkrótce zmiany poniżej, i spodziewamy się rozwiązać ten problem w postaci numeru . "

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