2013年09月10日

WPFサンプル:表示文字列を色付きやアンダーラインなどで修飾する

   このエントリーをはてなブックマークに追加 Clip to Evernote
TextBlockに表示する文字列はプレーンな文字列だけではなく、複数の書式をもった文字列を表示させることができます。

TextBlockFormat

アンダーラインを引くには、<Underline>と</Underline>で文字列をくくります。
ボールドにしたければ、<Bold> と </Bold>でくくります。
Run要素を使えば、背景色、文字色、フォントサイズも変更することができます。

以下、このサンプルのXAMLです。

<Window x:Class="TextBlockFormatedTextSample.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525"
        xml:lang="ja" >
    <Grid>
        <TextBlock HorizontalAlignment="Left" Margin="12,12,0,0" Width="350"
                   Name="textBlock1" Text="TextBlock" VerticalAlignment="Top"
                   TextWrapping="Wrap" xml:space="default">
            TextBlock内に、複数の書式を設定することができます。
            <Underline>アンダーライン</Underline>を引いたり、
            <Bold>太字</Bold> にしたりできます。
            <Run Foreground="Red">色を変更</Run> したり
            <Run FontSize="14" FontWeight="Bold" >サイズを変更する</Run> こともできます。
            <LineBreak />
            任意の場所で改行することもできます。
            <LineBreak />
            <Run TextDecorations="Strikethrough">取り消し線も引けます。</Run>
        </TextBlock>
    </Grid>
</Window>
ちなみに、xml:space="default" という指定をしています。規定値がdefaultであるため、 この場合は不要なのですが、この値を preserve にすると結果は大きく変わってきます。
興味のある方は、preserve にして実行してみてください。

WPFサンプル・目次


 

この記事へのトラックバックURL

http://trackback.blogsys.jp/livedoor/gushwell/52333864