如何在标签中添加换行符。我有一个标签,我在其中添加一个文本,这将导致此显示
一个
乙
C
我在WinForms c#中使用Environment.NewLine
完成了此操作,但这在WPF应用程序中不起作用
有人可以告诉我如何在标签中添加换行符?
我是从代码背后做的,而不是XAML
答案 0 :(得分:10)
如果您使用TextBlock instead of Label(您应该是!),那么您可以这样做:
<TextBlock>
<Run Text="First Line"/>
<LineBreak/>
<Run Text="Second Line"/>
</TextBlock>
你也可以从背后的代码中做到这一点(不知道为什么你会想要):
tb.Inlines.Add(new Run("First Line"));
tb.Inlines.Add(new LineBreak());
tb.Inlines.Add(new Run("Second Line"));
答案 1 :(得分:7)
我不认为Environment.NewLine
在您的情况下不起作用。在XAML中检查标签的高度。当您添加换行符时,它会增加标签中的内容,如果高度不够,那么您无法看到。我认为你面临这个问题其他明智的我没有看到Environment.NewLine
的任何问题:)尝试添加高度并告诉我
答案 2 :(得分:3)
设置你的最大宽度,然后让布局机制找到放回车的位置或把一些\ n放在那里
TextBlock tb = new TextBlock();
tb.Text = "This is a line with a carriage return";
tb.MaxWidth = 100;
tb.TextWrapping = TextWrapping.Wrap;
pan.Children.Add(tb);
在上面的代码中,pan只是一个堆栈面板控件,当然你将添加到你的标签控件中