wpf textblock - 仅设置文本背后的背景颜色?

时间:2011-03-07 18:14:05

标签: c# wpf xaml background textblock

当我在文本块上设置背景颜色时,它会为文本块的填充矩形着色。如果我有一个多行文本块,其中行通常不等长,这表示在较短行的末尾之后有空格。这很好,但有没有办法可以在文本行后面设置背景颜色,这样就不会创建这个空白区域了?

2 个答案:

答案 0 :(得分:1)

我不在Windows机器上,所以无法自己测试。我要尝试的第一件事是设置Run类,而不是TextBlock

<Style TargetType="Run">
    <Setter Property="Background" Value="Blue"/>
</Style>

...

<TextBlock TextWrapping="Wrap">
    Lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum
</TextBlock>

我会假设TextBlock在必须换行时创建多个Run实例,我会这样做。

答案 1 :(得分:0)

我认为最简单的方法是将TextBlock放在BorderThickness = 0的边框内并设置边框的背景。边框将随文本块一起扩展,但不会占用额外的空间。

相关问题