WPF:减少/删除TextBlock中文本上方的空白
我有一个文本块,我想在其中显示两行不同字体大小的文本,但我不想在每行上面浪费所有的空间 我的XAML如下所示WPF:减少/删除TextBlock中文本上方的空白,wpf,xaml,Wpf,Xaml,我有一个文本块,我想在其中显示两行不同字体大小的文本,但我不想在每行上面浪费所有的空间 我的XAML如下所示 <TextBlock Grid.Column="0" Grid.Row="0" FontWeight="Bold" Foreground="Red" TextAlignment="Center"> <Run Text="A" FontSize="144" FontWeight="Bold" /> <LineBreak />
<TextBlock Grid.Column="0" Grid.Row="0" FontWeight="Bold" Foreground="Red" TextAlignment="Center">
<Run Text="A" FontSize="144" FontWeight="Bold" />
<LineBreak />
<Run Text="Service" FontSize="18" />
</TextBlock>
我最终得到的是
而我想要的是
请注意“A”上方以及“A”和“Service”行之间的所有浪费空间(我已在第二张图像中通过操纵图像删除了这一点)
我尝试了各种组合的线条高度、线条堆叠策略、边距和填充属性值,不仅针对文本块,而且针对段落(使用样式),但似乎没有任何东西可以删除空格
有谁能建议我应该如何做到这一点;我相信这一定是可能的
谢谢。您可以使用设置为BlockLineHeight
的属性,并指定LineHeight
以获得所需的内容
<TextBlock Grid.Column="0" Grid.Row="0" FontWeight="Bold" Foreground="Red" TextAlignment="Center"
LineHeight="15.25"
LineStackingStrategy="BlockLineHeight">
<Run Text="A" FontSize="144" FontWeight="Bold" />
<LineBreak />
<Run Text="Service" FontSize="18" />
</TextBlock>
您可以使用设置为BlockLineHeight
的属性,并指定LineHeight
以获得所需的内容
<TextBlock Grid.Column="0" Grid.Row="0" FontWeight="Bold" Foreground="Red" TextAlignment="Center"
LineHeight="15.25"
LineStackingStrategy="BlockLineHeight">
<Run Text="A" FontSize="144" FontWeight="Bold" />
<LineBreak />
<Run Text="Service" FontSize="18" />
</TextBlock>
我不认为这会完全符合您的搜索方式,但您可以尝试一下 根据您的喜好将
TextBlock
放入DockPanel
或StackPanel
中,然后将其中一个放入视图框中
ViewBox
尝试最大化它所包含的相对于wpf窗口分辨率的内容
将TextBlock
放在StackPanel
中的原因是ViewBox
不接受多个子项。我认为这不会完全符合您的搜索方式,但您可以尝试
根据您的喜好将TextBlock
放入DockPanel
或StackPanel
中,然后将其中一个放入视图框中
ViewBox
尝试最大化它所包含的相对于wpf窗口分辨率的内容
将TextBlock
放入StackPanel
的原因是ViewBox
不接受多个子项。Give Service负边距不起作用?例如:Margin=“0-40 0”
Give Service负保证金不起作用?例如:Margin=“0-40 0”
感谢这一点,我最终使用了这一技术,但实现时使用了答案。在更一般的解决方案中,您不知道编译时TextBlock
的FontSize
(但使用的是一致的大小),只需将LineHeight
绑定到与您绑定到的FontSize
相同的值:
基于@mrfelis注释,我将LineHeight绑定到FontSize:LineHeight=“{binding FontSize,RelativeSource={RelativeSource Mode=Self}”
。为此,我最终使用了这项技术,但使用答案实现。在更一般的解决方案中,如果您在编译时不知道TextBlock
的FontSize
(但使用一致的大小),只需根据@mrfelis注释将LineHeight
绑定到与FontSize
绑定到相同的值即可,我正在将LineHeight绑定到FontSize:LineHeight=“{binding FontSize,RelativeSource={RelativeSource Mode=Self}}”
。