web-dev-qa-db-fra.com

Comprendre le contrôle de la grille uniforme

J'essayais juste une grille uniforme, comment ça marche.

Code:

<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>

J'ai trouvé que les deux boutons sont placés côte à côte, mais il existe une colonne entre eux. Pourquoi en est-il ainsi? (comme dans une grille uniforme, chaque cellule a une taille similaire, il devrait y avoir une cellule entre elles)

Compris pourquoi il en est ainsi (par réponse) mais toujours curieux de savoir quelle est la signification de la propriété attachée - Grid.Row & Grid.Column s'ils ne font rien ???

27
Rohit

UniformGrid contient deux propriétés, Lignes et Colonnes, pour définir le nombre de lignes et de colonnes. Les contrôles sont ajoutés à la grille dans l'ordre où ils sont déclarés. Il n'y aura donc pas de colonne entre eux. Dans votre exemple, vous avez déclaré Colonnes = 3 et vous avez ajouté seulement deux contrôles. Mais si vous ajoutez un autre contrôle, il sera placé à la fin.

  <UniformGrid Name="uniformGrid1"
                 Rows="2"
                 Columns="3">
        <Button Content="Rohit"
                 Margin="2" />
        <Button Content="asit"
                 Margin="2" />
        <Button Content="asit"
                Margin="2" />
    </UniformGrid>
47
Kishore Kumar

Comme indiqué dans article MSDN pour UniformGrid , il n'y a pas de Grid.Row ou Grid.Column propriété attachée.

Au lieu de cela, Intellisense peut le suggérer car vous avez un Grid plus haut dans l'arborescence du document. S'il s'agissait d'une propriété attenante, elle serait beaucoup plus susceptible d'être appelée UniformGrid.Row car c'est ainsi que l'on accède aux propriétés attachées.

15
Kian