2011-03-26 12 views

Respuesta

50

Grid ColumnDefinitions y RowDefinitions permiten unidades proporcionales (además de píxeles fijos y Auto).

Aquí hay 2 ejemplos:

<Grid.ColumnDefinitions> 
    <ColumnDefinition Width="Auto" /> 
    <ColumnDefinition Width="20" /> 
    <ColumnDefinition Width="*" /> 
    <ColumnDefinition Width="*"/> 
    <ColumnDefinition Width="*"/> 
    <ColumnDefinition Width="*"/> 
</Grid.ColumnDefinitions> 

La primera columna será tan grande como sea necesario para adaptarse a todo el contenido de la columna. La siguiente columna es de 20 píxeles independientes del dispositivo de ancho. El ancho restante de la grilla se dividirá equitativamente entre las columnas restantes. (100%/4 = 25% en cada uno)

<Grid.ColumnDefinitions> 
    <ColumnDefinition Width="*" /> 
    <ColumnDefinition Width="4*"/> 
    <ColumnDefinition Width="4*"/> 
    <ColumnDefinition Width="*"/> 
</Grid.ColumnDefinitions> 

Este código dividiría 4 columnas en 10%, 40%, 40% y 10% del total anchura de cuadrícula.

+2

Entonces, ¿es '20 * en vez de 20%? –

+7

Es proporcional. * es lo mismo que 1 *. Puedes tener unidades fraccionales. Suma todos los * números y luego el ancho de cada columna es su propio número dividido por el total. 20 * sería 20% si el resto de las columnas sumara 80 *. – foson

+0

NOTA, asegúrese de agregar el asterisco después del 4 también. De hecho, me lo perdí la primera vez que lo busqué. ¿He visto "4" no "4 *" malos ojos? –

Cuestiones relacionadas