设置TextBlock以保留开头和结尾的空白区域?

时间:2011-05-09 07:50:01

标签: c# .net wpf textblock

编辑:

下面的代码实际上可以按照我的意愿运行 - 这个问题有点误导。请忽略它。


通常我设置Text的{​​{1}}属性时这样:

TextBlock

未显示文本开头和结尾的空格。 TextBlock tb = new TextBlock(); tb.Text = " Hello World "; 显示的文字仅为TextBlock。如何设置Hello World来显示它们(即不删除空格)?我错过了一些财产吗?

4 个答案:

答案 0 :(得分:47)

在这种情况下,您无需使用xml:space="preserve"

<TextBlock xml:space="preserve" Text="     Hello world!    " />

将显示空格,但是

<TextBlock>    Hello world!    </TextBlock>

不会。

答案 1 :(得分:8)

Re:“我只是希望你不要用它来对齐你的文字。还有很多其他更优雅的方法可以做到这一点。”

听起来您可能想要使用Padding属性: http://msdn.microsoft.com/en-us/library/system.windows.controls.textblock.padding(VS.85).aspx

另见各种对齐&amp;保证金属性。

答案 2 :(得分:3)

设置xml:space属性以保留在XAML中,我假设你使用的是WPF

<TextBlock xml:space="preserve" Text="     Hello world!    " />

编辑:在XAML中做事有时更容易。我只是希望你不是用它来对齐你的文字。还有许多其他更优雅的方法可以做到这一点。

答案 3 :(得分:0)

您不需要使用 Text= 属性。这也有效:

<TextBlock xml:space="preserve">Staff Contact Details        <Hyperlink>Click here</Hyperlink></TextBlock>