WPF文本块,文本属性中的换行符
有没有办法让\n在TextBlock换行? 
 <TextBlock Text="line1\nLine2" /> 
 还是有一个更好的方法来强制在Text属性中的中间行rest? 
 <LineBreak /> 
 这对我不起作用,它需要是Text属性的值,因为文本string是从外部源设置的。 
 我很熟悉LineBreak但这不是我正在寻找的答案。 
 我知道这是在回答一个老问题,但是我也遇到了同样的问题。 我的解决scheme是使用HTML编码的换行符( &#10; )。 
 Line1&#10;Line2 
好像
1号线
2号线
对于更多的HTML编码字符检查w3schools
尝试这个:
 <TextBlock> line1 <LineBreak /> line2 </TextBlock> 
最简单的方法是
 <TextBlock> blabla <LineBreak /> coucou <LineBreak /> coucou 2 </TextBlock> 
 所以你只需编写XAML代码,和<LineBreak />具有完全一样的含义 
 在HTML中或在C#中的“\ n”。 
 <LineBreak/> 
http://www.longhorncorner.com/UploadFile/mahesh/XamlLineBreak06092005152257PM/XamlLineBreak.aspx
如何将行分成两个标签?
 <StackPanel> <TextBlock Text="Line1" /> <TextBlock Text="Line2" /> </StackPanel> 
如果它在Grid或StackPanel等集合内,<LineBreak />将不起作用。 在这种情况下,下面的工作将如图所示:

只需使用AccessText控件。 你可以使用它像一个标签,你有属性TextWrapping =“WrapWithOverflow”
例如。
矿是这样的,它工作正常。 另外,您在改变文本方面没有任何问题。
我迟到了,但是..这或多或less是我做的,(介意我的ItemSources是纯string,没有格式化,我不需要任何“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(); } } 
正确的使用方法可能如下:
 <TextBlock> <Span>text1</Span> <LineBreak/> <Span>text2</Span> </TextBlock> 
我有一个类似的问题,并希望绑定一个XAML标记的string到一个TextBlock。 Essentialy将声明标记存储在TextBlock中的string中供以后使用。
这是我做了 :我subclassed TextBlock使InlineCollection可绑定,并写了一个转换器之间的string和InlineCollection(或实际上是一个通用的Inline列表)。
  <HyperlinkButton Content="Apply and restart this pplication!

Note that modifying these settings requires the application to be restarted." /> 
  CRLF简单的方法= !

 
 !

  – 处理所有wpf,xaml,Silverlight控件,如TextBlock,HyperlinkText等等 
如果您正在绑定TextBlock的文本,其他答案都不起作用。 只需将“\ n”添加到要破解的位置即可。