使用WPF的CheckBox文本中的新行?

时间:2011-05-20 14:40:33

标签: c# wpf checkbox

我如何在文本中为复选框创建换行符?我试过了\ n但它不起作用?

编辑:这是我的CheckBox

<CheckBox xml:space="preserve"  Height="16" HorizontalAlignment="Left" Margin="360,46,0,0" Name="ShowOldRegistrations" VerticalAlignment="Top" Checked="ShowOldRegistrations_Checked" Unchecked="ShowOldRegistrations_UnChecked">
    <StackPanel  Height="42" Width="108">
        <TextBlock>Line1</TextBlock>
        <TextBlock>Line2</TextBlock>
    </StackPanel>
</CheckBox>

3 个答案:

答案 0 :(得分:9)

    <CheckBox Content="Stuff on line1&#x0a;Stuff on line 2" />

答案 1 :(得分:5)

你不应该使用StackPanel进行换行,TextBlocks可以轻松地做到这一点:

<CheckBox>
    <TextBlock>
        <Run Text="Line 1"/>
        <LineBreak/>
        <Run Text="Line 2"/>
    </TextBlock>
</CheckBox>

答案 2 :(得分:2)

在WPF中,您几乎可以在任何地方放置任何控件。所以你可以试试这个:

<CheckBox>
    <StackPanel>
        <TextBlock>foo</TextBlock>
        <TextBlock>bar</TextBlock>
    </StackPanel>
</CheckBox>

此外,您需要从复选框中删除Height属性。当然,如果高度不允许显示更多,则只显示一行。

在WPF中,在大多数情况下,您不需要(也不应该)为控件指定绝对尺寸。它们可以很好地自动调整。