2016-11-11 14 views
-2

私は、StackPanelの2つのGrid要素を持つフォームを持っています。私はそれが望むように下Gridは自動的に、すべての利用可能なスペースを埋めるだろう想像しただろうが、私はGrid行の高さを設定しています:ラベルとボタンのWPFレイアウトを作成するにはどうすればいいですか?

<RowDefinition Height="20" /> 
<RowDefinition Height="*" /> 
<RowDefinition Height="25" /> 

上下に短い行をしていますそれぞれ、グリッドのVerticallAllignmentStretchに設定しようとしましたが、無駄です。

フォームの高さに関係なく、ボトムグリッドの下部をフォームの下部に固定するにはどうすればよいですか?

+2

垂直のStackPanelを垂直にその子のサイズを変更することはありません。代わりに、2行またはDockPanelを持つ外部グリッドを使用します。 – Clemens

答えて

1

StackPanelを使用して、使用可能なすべての垂直スペースを埋めることは基本的にはできません。

しかし、あなたはDockPanelを使用することがあります。

<DockPanel LastChildFill="True"> 
    <Grid DockPanel.Dock="Top"/> 
    <Grid /> 
</DockPanel> 

また、グリッドを使用することがあります。

<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="Auto"/> 
     <RowDefinition Height="*"/> 
    </Grid.RowDefinitions> 

    <Grid Grid.Row="0"/> 
    <Grid Grid.Row="1"/> 
</Grid> 
+0

'LastChildFill =" True "'がデフォルトであるため、明示的に設定する必要はありません。 – Clemens

関連する問題