WPF标签中的换行符?
如何在WPF中的标签文本中添加换行符,如下所示?
<Label>Lorem ipsum</Label>
<Label><TextBlock>Lorem<LineBreak/>ipsum</TextBlock></Label>
您需要使用TextBlock,因为TextBlock接受内联对象的集合作为子项。 所以你给TextBlock元素三个内联项:运行文本=“Lorem”,LineBreak和运行文本=“ipsum”。
你不能做到以下几点:
<Label>Lorem<LineBreak/>ipsum</Label>`
因为一个标签接受一个内容子元素。
编辑:另外,不确定你的用例是什么,但注意到我放置在您的标签元素的TextBlock。 重复吗? 不是真的,取决于你的需要。 这里有一篇关于两个元素之间差异的好文章: 标签和TextBlock之间的区别
在WPF中,您可以使用值" "
或"
"
例如:
<Label Content="Lorem ipsum" />
(“10”是换行符的ASCII码)
要么
<Label Content="Lorem
ipsum" />
(“A”是hex换行符的ASCII码)
在ViewModel或Model中执行此操作时,我发现使用Environment.NewLine具有最一致的结果,包括本地化。 它应该直接在视图中工作,但我没有testing过。
例:
在视图中
<Label Content="{Binding SomeStringObject.ParameterName}" />
在ViewModel中:
SomeStringObject.ParameterName = "First line" + Environment.NewLine + "Second line";