一つのTextBlock内で改行を行う場合XAMLだとLineBreakを利用して以下のように記述する。
<TextBlock HorizontalAlignment="Left" Margin="285,297,0,0" TextWrapping="Wrap" Text="TextBlock" VerticalAlignment="Top" Height="142" Width="203" FontSize="22"> 一行目<LineBreak />二行目 </TextBlock>
C#で改行を行い場合は\nまたは\u2028に置き換える。
var str = "改行のサンプル。改行のサンプル"; // var str = "改行のサンプル\u2028改行のサンプル"; this.sampleTextBlock.Text = str.Replace("。", "。\u2028");
コントロールの端でテキストを折り返した場合は「TextWrapping=”Wrap”」を指定してあげる。
<TextBlock x:Name="sampleTextBlock" TextWrapping="Wrap" HorizontalAlignment="Left" Margin="285,297,0,0" VerticalAlignment="Top" Height="142" Width="412" FontSize="22"> 一行目<LineBreak />二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目二行目 </TextBlock>
検索してTextBlockをC#から改行できないというような記事を見て信じかけて、おいおい自分で作ったアプリで改行してるじゃないか!! となったので備忘録。
Please give us your valuable comment