で\n改行する方法はありTextBlockますか?
<TextBlock Text="line1\nLine2" />または、Text属性内で中間の改行を強制するより良い方法はありますか?
<LineBreak />これは機能しません。Textテキスト文字列が外部ソースから設定されているため、属性の値である必要があります。
私は精通してLineBreakいますが、私が探している答えではありません。
で\n改行する方法はありTextBlockますか?
<TextBlock Text="line1\nLine2" />または、Text属性内で中間の改行を強制するより良い方法はありますか?
<LineBreak />これは機能しません。Textテキスト文字列が外部ソースから設定されているため、属性の値である必要があります。
私は精通してLineBreakいますが、私が探している答えではありません。
回答:
私はこれが古い質問を解決することを知っていますが、同じ問題がありました。私の解決策は、HTMLエンコードされたラインフィードを使用することでした(&#10;)。
Line1&#10;Line2のように見えます
Line1
Line2
HTMLエンコードされた文字の詳細については、w3schoolsをご覧ください。
<TextBlock>との間のコンテンツとしてテキストが指定されている</TextBlock>場合は、そうする必要があり<LineBreak/>ます。
内側の作品Text属性:<TextBlock Text="..." />
                    これを試して:
<TextBlock>
    line1
    <LineBreak />
    line2
</TextBlock>行を2つのタグに分割してみませんか?
<StackPanel>
    <TextBlock Text="Line1" />
    <TextBlock Text="Line2" />
</StackPanel><LineBreak />は、GridやStackPanelなどのコレクション内にある場合は機能しません。このような場合、次のように機能します。

  <HyperlinkButton 
        Content="Apply and restart this pplication!

Note that modifying these settings requires the application to be restarted."   />CRLF単純な方法= !

 
!

   -TextBlock、HyperlinkTextなどのすべてのwpf、xaml、silverlightコントロールで作業する
これもうまくいきます:
<TextBlock>
    <Run Text="My nice text"/>
    <LineBreak/>
    <LineBreak/>
    <Run Text="After some linebreaks, I'm back!"/>
</TextBlock>私はパーティーに遅れましたが、これは多かれ少なかれ私がやった方法です(私のItemSourceはフォーマットされていないプレーンな文字列であり、何も 'convertBack'する必要がなかったことに注意してください)。
public class SpaceToLineBreakConverter : IValueConverter
{   
    public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {            
        return (!String.IsNullOrEmpty(value as string)) 
        ? new Regex(@"\s").Replace(value as string, "\n") 
        : value;            
    }
    public object ConvertBack(object value, Type targetType, object parameter,System.Globalization.CultureInfo culture)
    {
        throw new NotImplementedException();
    }
}同様の問題があり、xamlマークアップの文字列をTextBlockにバインドしたいと思っていました。基本的に、宣言型マークアップをTextBlock内に文字列に格納して、後で使用できるようにします。
これが私がやった方法です:InlineCollectionをバインド可能にするためにTextBlockをサブクラス化し、文字列とInlineCollection(または実際にはInlinesの汎用リスト)の間にConverterを書きました。