TextWrapping,TextTrimming,中心对齐和垂直拉伸

时间:2013-08-22 18:15:42

标签: c# wpf silverlight layout windows-phone

我在Windows Phone中看似简单的布局问题。问题如下图所示:

Illustration

我的要求如下:

  • 字幕必须始终可见,代价是标题的溢出文本。
  • 标题和副标题必须在垂直和水平居中。

当我使用StackPanel或自动高度Grid行时,该框会溢出。如果我尝试星高行 我无法控制一个大标题。

1 个答案:

答案 0 :(得分:1)

<Grid HorizontalAlignment="Center" VerticalAlignment="Center">
   <Grid.RowDefinitions>
      <RowDefinition Height="*" />
      <RowDefinition Height="Auto" />
   </Grid.RowDefinitions>
   <TextBlock ...>Title</TextBlock>
   <TextBlock Grid.Row="1" ...>SubTitle</TextBlock>
</Grid>

找到解决方案,这将涵盖除了整个屏幕溢出的底部元素之外的所有内容,在我的情况下,这是不可能的。它仅在父容器没有提供无限高度时才有效(如StackPanel)。

基本上,auto高度优先于star - 高度元素。这使得底部TextBlock空间可以选择其高度,然后将剩余的可用空间分配给顶部元素。