方法: GridSplitter を使用して列のサイズを変更する
この例では、Gridのディメンションを変更せずに、Grid 内の 2 つの列間のスペースを再配分するために垂直 GridSplitter を作成する方法を示します。
例
列の端をオーバーレイする GridSplitter を作成する方法
Grid内の隣接する列のサイズを変更する GridSplitter を指定するには、Column 添付プロパティをサイズ変更する列のいずれかに設定します。 Grid に複数の行がある場合は、RowSpan 添付プロパティを行数に設定します。 次に、HorizontalAlignment プロパティを Left または Right に設定します (どの配置を設定するかは、サイズを変更する 2 つの列によって異なります)。 最後に、VerticalAlignment プロパティを Stretchに設定します。
<GridSplitter Grid.Column="1"
Grid.RowSpan="3"
HorizontalAlignment="Left"
VerticalAlignment="Stretch"
Background="Black"
ShowsPreview="true"
Width="5"/>
独自の列を持たない GridSplitter は、Grid内の他のコントロールによって隠される可能性があります。 この問題を回避する方法の詳細については、「GridSplitter が表示されていることを確認する」を参照してください。
列 を占有する GridSplitter を作成する方法
Grid内の列を占有する GridSplitter を指定するには、Column 添付プロパティをサイズ変更する列のいずれかに設定します。 グリッドに複数の行がある場合は、RowSpan 添付プロパティを行数に設定します。 次に、HorizontalAlignment を Centerに設定し、VerticalAlignment プロパティを Stretchに設定し、GridSplitter を含む列の Width を Autoに設定します。
次の例は、列を占有し、列の両側の列のサイズを変更する垂直 GridSplitter を定義する方法を示しています。
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="Auto" />
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<GridSplitter Grid.Column="1"
HorizontalAlignment="Center"
VerticalAlignment="Stretch"
Background="Black"
ShowsPreview="True"
Width="5"
/>
参照先
.NET Desktop feedback