Windows Phone で一見単純なレイアウトの問題があります。この問題は、次の図に示されています。
私の要件は次のとおりです。
- タイトルのオーバーフロー テキストを犠牲にして、サブタイトルを常に表示する必要があります。
- タイトルとサブタイトルは合わせて、垂直方向と水平方向の中央に配置する必要があります。
StackPanel
または自動高さの行を使用するGrid
と、ボックスがオーバーフローします。星の高さの行を試してみると、大きなタイトルを制御できません。
Windows Phone で一見単純なレイアウトの問題があります。この問題は、次の図に示されています。
私の要件は次のとおりです。
StackPanel
または自動高さの行を使用するGrid
と、ボックスがオーバーフローします。星の高さの行を試してみると、大きなタイトルを制御できません。
<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
)。
基本的に、高さは-height 要素auto
よりも優先されます。star
これにより、下部TextBlock
にその高さを選択するためのスペースが与えられ、残りの利用可能なスペースが上部の要素に割り当てられます。