WPF换行问题

时间:2011-08-18 14:53:31

标签: wpf textblock line-breaks

我有一个TextBlock,想要显示数据库中的信息。 我不想这样显示文字:

Task for Day xy
- blabla
- blabla 
- more blablabla

不知怎的,我需要为换行添加一个字符..我想了解\ n ..所以数据库中的文字看起来像:

日间任务xy \ n-blabla \ n-blabla \ n-更多blablabla

不起作用。

我在网上尝试和搜索了几个小时..没有解决方法如何做到这一点。 这也行不通:

Task for Day xy<LineBreak />- blabla<LineBreak />- blabla<LineBreak />- more blablabla

应用程序在没有新行的情况下从数据库中准确显示该字符串..

这里是xaml的一部分:

<Grid>
  <Grid.ColumnDefinitions>
      <ColumnDefinition Width="100" />
      <ColumnDefinition Width="*" />
  </Grid.ColumnDefinitions>
  <TextBlock Grid.Column="1" Text="{Binding Date, StringFormat={}{0:dd.MM.yyyy}}" Margin="6" />
  <TextBlock Grid.Column="2" Text="{Binding Notes}" Margin="6" />
</Grid>

任何想法?

2 个答案:

答案 0 :(得分:2)

我不建议在数据库中存储换行符,因为不同平台的换行符不会相同。我只是在使用System.Environment.NewLine显示之前添加换行符。

答案 1 :(得分:0)

只需在文本中包含常规换行符,没有花哨的转义序列或XML标记:

 string fromDb = ... // get string from DB
 myPropertyWhichIsBoundToWpf = fromDb.Replace("hereShouldBeALinebreak", 
                                              System.Environment.NewLine);