6

Windows ストア アプリで、TextBlock のコンテンツに StrikeThrough 効果を適用する方法はありますか? 存在しない場合は、RichTextBlock または同様のコントロールで十分です。XAML を使用するかプログラム (C#) を使用するかは問題ではありませんが、デザイナーに表示されるように XAML を使用することをお勧めします。

Microsoft のドキュメントでこれを見つけましたが、使い方がわかりません: http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.text.itextcharacterformat.strikethrough.aspx

4

2 に答える 2

15

Windowsストアアプリには、独自のコントロール名前空間(System.Ui.Xaml.Controls)があります。WindowsストアアプリのTextBlockにはTextDecorationプロパティがないことがわかります:TextBlockドキュメント

「完全な」.Net4.5TextBlockには、TextDecorationプロパティがあります。.Net4.5WPFTextBlockドキュメント

次のような「ハッキー」な方法でこれを行うことができます。

    <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>
于 2012-10-07T21:03:43.080 に答える
3

結局それは不可能のようです:

「Windows8用のXAMLフレームワークの最終的な実現にTextDecorationクラスを含めることはできません。つまり、取り消し線機能を使用することはできませんが、Underlineクラスを介してテキストに下線を引くことはできます。 「」

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

ただし、Microsoftはこれに取り組んでいます:

「これは、Windows 8開発者プレビューのXAMLテキストストーリーの既知の制限です。明るい面では、これは計画された改善が間もなく行われる領域であり、この問題を解決する予定です。」

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

于 2012-10-07T20:43:47.350 に答える