Udostępnij za pośrednictwem


Instrukcje: zmienianie rozmiaru kolumn za pomocą kontrolki GridSplitter

W tym przykładzie pokazano, jak utworzyć pionową GridSplitter w celu ponownego rozsyłania przestrzeni między dwiema kolumnami w Grid bez zmieniania wymiarów Grid.

Przykład

Jak utworzyć obiekt GridSplitter nakładający krawędź kolumny

Aby określić GridSplitter, który zmienia rozmiar sąsiednich kolumn w Grid, ustaw właściwość Column dołączoną do jednej z kolumn, które chcesz zmienić. Jeśli Grid ma więcej niż jeden wiersz, ustaw właściwość RowSpan dołączoną do liczby wierszy. Następnie ustaw właściwość HorizontalAlignment na Left lub Right (ustawienie wyrównania zależy od dwóch kolumn, które chcesz zmienić). Na koniec ustaw właściwość VerticalAlignment na Stretch.

<GridSplitter Grid.Column="1" 
              Grid.RowSpan="3" 
              HorizontalAlignment="Left" 
              VerticalAlignment="Stretch"
              Background="Black" 
              ShowsPreview="true"
              Width="5"/>

GridSplitter, który nie ma własnej kolumny, może być zasłonięty przez inne kontrolki w Grid. Aby uzyskać więcej informacji na temat zapobiegania temu problemowi, zobacz Upewnij się, że funkcja GridSplitter jest widoczna.

Jak utworzyć obiekt GridSplitter, który zajmuje kolumny

Aby określić GridSplitter, który zajmuje kolumnę w Grid, ustaw właściwość Column dołączoną do jednej z kolumn, które chcesz zmienić. Jeśli siatka ma więcej niż jeden wiersz, ustaw właściwość RowSpan na liczbę wierszy. Następnie ustaw HorizontalAlignment na wartość Center, ustaw właściwość VerticalAlignment na Stretchi ustaw Width kolumny zawierającej GridSplitter na wartość Auto.

W poniższym przykładzie przedstawiono, jak zdefiniować element pionowy GridSplitter, który zajmuje kolumnę i dostosowuje rozmiar kolumn po obu jej stronach.

<Grid.ColumnDefinitions>
  <ColumnDefinition/>
  <ColumnDefinition Width="Auto" />
  <ColumnDefinition/>
</Grid.ColumnDefinitions>
<GridSplitter Grid.Column="1"
              HorizontalAlignment="Center"
              VerticalAlignment="Stretch"
              Background="Black" 
              ShowsPreview="True"
              Width="5"
              />

Zobacz też