Procedure: Het formaat van rijen wijzigen met een GridSplitter

In dit voorbeeld ziet u hoe u een horizontale GridSplitter gebruikt om de ruimte tussen twee rijen in een Grid opnieuw te verdelen zonder de afmetingen van het Gridte wijzigen.

Voorbeeld

Hoe je een GridSplitter maakt die over de rand van een rij loopt

Als u een GridSplitter wilt opgeven waarmee de grootte van aangrenzende rijen in een Gridwordt aangepast, stelt u de eigenschap Row gekoppeld in op een van de rijen waarvan u het formaat wilt wijzigen. Als uw Grid meer dan één kolom heeft, stelt u de gekoppelde eigenschap ColumnSpan in om het aantal kolommen op te geven. Stel vervolgens de VerticalAlignment in op Top of Bottom (welke uitlijning u instelt, is afhankelijk van de twee rijen waarvan u het formaat wilt wijzigen). Stel ten slotte de eigenschap HorizontalAlignment in op Stretch.

In het volgende voorbeeld ziet u hoe u een horizontale GridSplitter definieert waarmee de grootte van aangrenzende rijen wordt aangepast.

<GridSplitter Grid.Row="1" 
              Grid.ColumnSpan="3" 
              HorizontalAlignment="Stretch" 
              VerticalAlignment="Top"
              Background="Black" 
              ShowsPreview="true"
              ResizeDirection="Rows"
              Height="5"/>

Een GridSplitter die geen eigen rij inneemt, kan onzichtbaar gemaakt worden door andere besturingselementen in de Grid. Zie Zorg ervoor dat een GridSplitter zichtbaar isvoor meer informatie over het voorkomen van dit probleem.

Een GridSplitter maken die een rij in beslag neemt

Om een GridSplitter op te geven dat een rij in een Gridinneemt, stelt u de gekoppelde eigenschap Row in op een van de rijen waarvan u het formaat wilt wijzigen. Als uw Grid meer dan één kolom heeft, stelt u de gekoppelde eigenschap ColumnSpan in op het aantal kolommen. Stel vervolgens de VerticalAlignment in op Center, stel de eigenschap HorizontalAlignment in op Stretchen stel de Height in van de rij met de GridSplitter op Auto.

In het volgende voorbeeld ziet u hoe u een horizontale GridSplitter definieert die een rij in beslag neemt en de grootte van de rijen aan beide zijden wijzigt.

<Grid.RowDefinitions>
  <RowDefinition Height="50*" />
  <RowDefinition Height="Auto" />
  <RowDefinition Height="50*" />
</Grid.RowDefinitions>
<StackPanel Grid.Row="0" Grid.Column="1" Background="Tan"/>
<GridSplitter Grid.Row="1"
              HorizontalAlignment="Stretch"
              VerticalAlignment="Center"
              Background="Black" 
              ShowsPreview="True"
              Height="5"
           />
<StackPanel Grid.Row="2" Grid.Column="0" Background="Brown"/>

Zie ook