UWP - 在 TextBlock 中垂直居中文本
Posted
技术标签:
【中文标题】UWP - 在 TextBlock 中垂直居中文本【英文标题】:UWP - Center Text Vertically in TextBlock 【发布时间】:2018-04-26 19:05:19 【问题描述】:所以有一个现有的thread 声明为了垂直对齐文本,您需要用边框换行。但是,我尝试了这个,而不是垂直对齐,TextBlock 进入一个角落,仍然垂直对齐到顶部。我不知道这是否与 WPF 和 UWP 的差异有关,但无论如何,它不起作用。我的 TextBlock 定义如下:
<TextBlock x:Name="TextBlock" Margin="855,226,0,0" TextWrapping="Wrap"
VerticalAlignment="Top" Height="150" Width="150" FontFamily="DOCK11"
TextAlignment="Center" Padding="0" HorizontalAlignment="Left" Text="Sample Text..."/>`
在给定尺寸的情况下,是否可以垂直对齐 TextBlock 的文本?提前致谢。
【问题讨论】:
【参考方案1】:根据documentationTextBlock.TextAlignment
获取或设置一个值,该值指示文本内容的水平对齐方式。
要实现您的目标,您确实应该用Border
包装TextBlock
并将其设置为VerticalAlignment
到Center
。
<Border Height="150"
Width="150"
Margin="855,226,0,0">
<TextBlock TextWrapping="Wrap"
FontFamily="DOCK11"
TextAlignment="Center"
VerticalAlignment="Center"
Padding="0"
Text="Sample Text..."/>
</Border>
【讨论】:
由于某种原因,当我这样做时,TextBlock 会离开屏幕,我什至找不到它。 由于您设置的Padding
值,它会从屏幕上消失。如果它是您的实验遗留下来的,请完全删除它。
我的 padding 一直设置为 0。
对不起,我的意思是Margin
@Orion31:不是 Visual Studio 正在更改边距。我猜你正在用鼠标将文本框移动到你想要的位置。以上是关于UWP - 在 TextBlock 中垂直居中文本的主要内容,如果未能解决你的问题,请参考以下文章
TextBlock 文本不在 DataGridCell 内垂直居中
如何在 UWP 上的 Xamarin 表单条目中垂直居中文本?