我在 Windows Phone 中有一个看似简单的布局问题。问题如下图所示:
我的要求如下:
- 字幕必须始终可见,代价是标题的溢出文本。
- 标题和副标题必须垂直和水平居中。
当我使用 aStackPanel
或 auto-heightGrid
行时,框会溢出。如果我尝试星高行,我将无法控制大标题。
我在 Windows Phone 中有一个看似简单的布局问题。问题如下图所示:
我的要求如下:
当我使用 aStackPanel
或 auto-heightGrid
行时,框会溢出。如果我尝试星高行,我将无法控制大标题。
<Grid HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<TextBlock ...>Title</TextBlock>
<TextBlock Grid.Row="1" ...>SubTitle</TextBlock>
</Grid>
找到了解决方案,这将涵盖除了溢出整个屏幕的底部元素之外的所有内容,在我的情况下这是不可能的。它仅在父容器没有提供无限高度时才有效(如 a StackPanel
)。
基本上,auto
高度优先于star
-height 元素。这给底部TextBlock
空间来选择它的高度,然后将剩余的可用空间分配给顶部元素。