У меня есть макет сетки с 3 рядами. Как мне разбить 3-й ряд на 2 столбца.
<Grid.RowDefinitions> <RowDefinition Height="0.75*"/> <RowDefinition Height="0.25*"/> <RowDefinition Height="36"/> </Grid.RowDefinitions>
Два способа сделать это:
Использовать вложенные макеты. Поместите еще один Grid в третью строку и добавьте два столбца в эту подсеть.
Grid
<Grid> <Grid.RowDefinitions> ... </Grid.RowDefinitions> <ThingInFirstRow Grid.Row="0" /> <ThingInSecondRow Grid.Row="1" /> <Grid Grid.Row="2"> <Grid.ColumnDefinitions> <ColumnDefinition /> <ColumnDefinition /> </Grid.ColumnDefinitions> <ThingInLowerLeft Grid.Column="0" /> <ThingInLowerRight Grid.Column="0" /> </Grid> </Grid>
Придерживайтесь одного Grid, задайте ему два столбца и сделайте так, чтобы вещи в первых двух строках охватывали оба столбца, используя ColumnSpan.
ColumnSpan
<Grid> <Grid.RowDefinitions> ... </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition /> <ColumnDefinition /> </Grid.ColumnDefinitions> <ThingInFirstRow Grid.Row="0" Grid.ColumnSpan="2" /> <ThingInSecondRow Grid.Row="1" Grid.ColumnSpan="2" /> <ThingInLowerLeft Grid.Row="2" Grid.Column="0" /> <ThingInLowerRight Grid.Row="2" Grid.Column="1" /> </Grid>