2014-05-21 15 views
5

Hallo Ich habe ohne Erfolg nach einer Lösung gesucht ...Merge Rasterspalten

Ich möchte ein Raster, das ähnelt:

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

Danke im Voraus!

Antwort

17

Es ist wie ein 3-Reihe, 2-Säulen-Grid mit proportionalen Größen aussieht:

  • Top-links: Grid.Column =

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

    Die 5-Zellen sein würden, "0", Grid.Row = "0"

  • Top-rechts: Grid.Column = "1", Grid.Row = "0"
  • Zentrum: Grid.Column = "0", Grid.Row = "1", Grid.ColumnSpan = "2"
  • Bottom-links: Grid.Column = "0", Grid.Row = "2 "
  • unten rechts: Grid.Column =" 1" , Grid.Row = "2"
10

Nun, das ist ein sehr einfaches Gitter. Zwei Spalten und drei Zeilen mit der zweiten Reihe Inhalt Spanning zwei Spalten ... es wird nicht viel einfacher als das ...

<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