2011-06-01 15 views
26

Solo estaba tratando de cuadrícula uniforme, cómo funciona.Entender el control Uniforme de cuadrícula

Código:

<UniformGrid Name="uniformGrid1" Rows="2" Columns="3"> 
     <Button Content="Rohit" Grid.Row="0" Grid.Column="0" /> 
     <Button Content="asit" Grid.Row="0" Grid.Column="2" /> 
</UniformGrid> 

encontré que ambos botones se colocan adyacentes entre sí, sin embargo existe una columna entre ellos. Por que es esto entonces ? (Como en la malla uniforme, cada célula tiene un tamaño similar debe haber una célula entre ellos)

entendido por qué es tan (por respuesta) pero aún curioso konw ¿cuál es la importancia de la propiedad adjunta - Grid.Row & cuadrícula .Columna si no hacen nada ???

Respuesta

41

UniformGrid contiene dos propiedades, Filas y Columnas, para establecer el número de filas y columnas. Los controles se agregan a la cuadrícula en el orden en que se declaran. Así que no habrá ninguna columna entre ellos. En su ejemplo, ha declarado Columnas = 3 y ha agregado solo dos controles. Pero si agrega otro control, se colocará al final.

<UniformGrid Name="uniformGrid1" 
       Rows="2" 
       Columns="3"> 
     <Button Content="Rohit" 
       Margin="2" /> 
     <Button Content="asit" 
       Margin="2" /> 
     <Button Content="asit" 
       Margin="2" /> 
    </UniformGrid> 
+1

Suena bien. Pero, ¿cuál es el significado de Grid.Row y Grid.Column propiedad adjunta en este caso ??? En general, representan la ubicación de Control en cuadrícula .... – Rohit

+2

Actualizó la respuesta. es mi error no es necesario proporcionar la propiedad adjunta Grid.Row y Grid.Column. Acabo de copiar tu código y no me di cuenta. –

+0

Un punto adicional: los controles se agregan ** por fila ** en el orden en que se declaran. Es decir, si tiene 3 columnas y agrega 4 controles, tendrá una fila de 3 y una segunda fila de 1. – NextInLine

14

Como se muestra en la MSDN article for a UniformGrid, no hay Grid.Row o Grid.Column propiedad adjunta.

En cambio, es posible que Intellisense lo sugiera porque tiene un Grid más arriba en el árbol de documentos. Si fuera una propiedad adjunta, sería mucho más probable que se llamara UniformGrid.Row, ya que así es como se accede a las propiedades adjuntas.

+0

Genial. Gracias. +1 – Rohit

Cuestiones relacionadas