63 votes

Ce n'RowDefinition Height="10*" dans une Grille XAML?

J'utilise Height="*" un peu à dire que la hauteur de la dernière ligne doit remplir le bas de la grille.

Mais que veut dire "10*"?

<Grid Name="mainGrid">
    <Grid.RowDefinitions>
    	<RowDefinition Height="100" />
    	<RowDefinition Height="40" />
    	<RowDefinition Height="10*" />
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
    	<ColumnDefinition Width="200"  />
    	<ColumnDefinition Width="*" />
    </Grid.ColumnDefinitions>
</Grid>

104voto

Kent Boogaart Points 97432

"*" est une abréviation de" "1*". C'est un ratio, donc si vous avez deux lignes, l'une avec "*" et une avec "10*", l'ancien obtient 1/11e de la disposition et ce dernier obtient 10/11ème de l'espace.

Dans l'exemple ci-dessus, "10*" est inutile - "*" aurait plus de sens, car il n'y a qu'une seule ligne à l'aide du ratio de base de dimensionnement, de sorte que n'importe quel rapport sera égal à 100% de l'espace disponible.

22voto

levteck Points 346

J'ai trouvé l'info ci-dessous de Christian Mosers être utile, car l'Auto, et de dimensions Fixes sur d'autres cellules, des lignes ou des colonnes aura une influence sur le comportement de l' * la taille. Voir http://wpftutorial.net/GridLayout.html


Fixe Fixe la taille des unités logiques (1/96 de pouce)

Auto Prend autant d'espace que nécessaire par le contrôle contenu

L'étoile(*) Prend tout l'espace disponible (après le remplissage de tous les auto et fixe la taille des colonnes), proportionnellement réparties sur toutes les étoiles de la taille des colonnes. Donc 3*/5* signifie la même chose que 30*/50*. Rappelez-vous que star-dimensionnement ne fonctionne pas si la taille de la grille est calculée en fonction de son contenu.

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
        <RowDefinition Height="Auto" />
        <RowDefinition Height="*" />
        <RowDefinition Height="28" />
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto" />
        <ColumnDefinition Width="200" />
    </Grid.ColumnDefinitions>
</Grid>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X