如何在XAML声明的Label中强制换行两个单词?

时间:2009-08-01 07:34:51

标签: wpf xaml

也许我没有使用正确的关键词,但我所有的搜索都是空的。你怎么强行换线?

我可以告诉你,以下工作都没有:

<Label
    Content="Line&br;Break:" />

<Label
    Content="Line<br />Break:" />

<Label
    Content="Line
    Break:" />

<Label
    Content="Line\nBreak:" />

有人可以分享这个严密保密的秘密吗?

感谢。


修改

好的,没关系。我终于找到了它。

<Label
    Content="Line&#x0a;Break:" />

绝对不容易猜到!


编辑2:

好的,现在为了让文字合理,我接受了这个:

<Label>
    <TextBlock
        TextAlignment="Right"
        Text="Line&#x0a;Break:" />
</Label>

感谢Julien使用TextBlock的想法。

3 个答案:

答案 0 :(得分:24)

如果您只需要显示文字,则可以使用TextBlock代替Label

<TextBlock>
  Line<LineBreak/>Break:
</TextBlock>

如果您确实需要Label(例如,您需要回复点击事件),则可以将上述代码包含在Label内。

答案 1 :(得分:3)

如果您想在标签中添加新行:

<Label Content="Lorem &#10;ipsum" />

(&#34; 10&#34;是换行符的ascii编号)

<Label Content="Lorem &#xA;ipsum" />

(&#34; A&#34;是十六进制换行符的ascii编号)

答案 2 :(得分:0)

我会这样做:

<StackPanel>
    <Label>First line</Label>
    <Label>Second line</Label>
</StackPanel>

如果确实涉及格式化,我会使用FlowDocumentScrollViewer