WPF: XAML, C# で TextBlock などの要素内の文字列を改行させる
要素のプロパティ内で改行するには以下のサンプルコードのように
を挿入します。
// XAML
<TextBlock Text="あいうえお かきくけこ" />
// C#
TextBlock txt = new TextBlock();
txt.Text = "あいうえお" + Environment.NewLine + "かきくけこ";
// C# 環境変数を使わないで
TextBlock txt = new TextBlock();
txt.Text = "あいうえお¥nかきくけこ";
// C# プログラマティックに
TextBlock txt = new TextBlock();
txt.Inlines.Add(new Run("あいうえお"));
txt.Inlines.Add(new Run(Environment.NewLine));
txt.Inlines.Add(new Run("かきくけこ"));
次にプロパティ内ではなく、文字列をタグで挟んでいる場合は <LineBreak />
を挿入します。
// XAML
<TextBlock>
あいうえお<LineBreak />
かきくけこ
</TextBlock>
ふむふむ。
参考記事
- WPF Textblock, linebreak in Text attribute - Stack Overflow
- TextBlock Class (System.Windows.Controls)