2014-05-21 18 views
5

Hi Sono stato alla ricerca di una soluzione senza successo ...Unisci colonne della griglia

Voglio una griglia che assomiglia:

+-------+----------------+ 
|  |    | 
+-------+----------------+ 
|      | 
|      | 
|      | 
+-------+----------------+ 
|  |    |   
+-------+----------------+ 

Grazie in anticipo!

risposta

17

Sembra un 3-fila, Grid 2 colonne con dimensioni proporzionali:

<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="*" /> 
     <RowDefinition Height="2*" /> 
     <RowDefinition Height="*" /> 
    </Grid.RowDefinitions> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="*" /> 
     <ColumnDefinition Width="3*" /> 
    </Grid.ColumnDefinitions> 
</Grid> 

5 celle sarebbero come:

  • Top-sinistra: Grid.Column = "0", Grid.Row = "0"
  • Top-destra: Grid.Column = "1", Grid.Row = "0"
  • Centro: Grid.Column = "0", Grid.Row = "1", Grid.ColumnSpan = "2"
  • basso a sinistra: Grid.Column = "0", Grid.Row = "2 "
  • basso a destra: Grid.Column =" 1" , Grid.Row = "2"
10

Ora, che è molto semplice griglia. Due colonne e tre righe con il secondo contenuto fila che occupa due colonne ... non ottiene molto più semplice di così ...

<Grid Width="640" Height="480"> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="3*"/> 
     <ColumnDefinition Width="7*"/> 
    </Grid.ColumnDefinitions> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="25*"/> 
     <RowDefinition Height="50*"/> 
     <RowDefinition Height="25*"/> 
    </Grid.RowDefinitions> 
    <Border Grid.Column="0" Grid.Row="0" BorderBrush="Red" Margin="1" BorderThickness="2" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/> 
    <Border Grid.Column="1" Grid.Row="0" BorderBrush="Green" Margin="1" BorderThickness="2" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/> 
    <Border Grid.Column="0" Grid.Row="1" Grid.ColumnSpan="2" Margin="1" BorderThickness="2" BorderBrush="Blue" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/> 
    <Border Grid.Column="0" Grid.Row="2" BorderBrush="Red" Margin="1" BorderThickness="2" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/> 
    <Border Grid.Column="1" Grid.Row="2" BorderBrush="Green" Margin="1" BorderThickness="2" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/> 
    </Grid> 

enter image description here

Problemi correlati