Obtenez réel WPF Grille de Largeur
J'ai une Fenêtre WPF avec une grille:
<Grid Name="mainGrid">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="20*" />
<ColumnDefinition Width="700*" />
<ColumnDefinition Width="190*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="80" />
<RowDefinition Height="220*" />
<RowDefinition Height="450*" />
<RowDefinition Height="160*" />
<RowDefinition Height="30" />
</Grid.RowDefinitions>
</Grid>
Dans le code-behind, je suis l'ajout d'un stackpanel à la 1ère colonne, 2e rangée de mainGrid, mais je suis désireux de la largeur maximale de la stackpanel à la largeur de la colonne 1 - 50px. Je suis tombé à travers stkPanel.Width = mainGrid.ColumnDefinitions(1).Width.ToString - 50
, cependant cette erreur avec:
700* ne peut pas être convertie en double
Est-il un moyen d'obtenir la largeur de la colonne de la grille telle qu'elle apparaît sur l'écran pour utiliser comment je suis désireux, ou dois-je mettre le rembourrage ou similaires?
Merci,
Matt
OriginalL'auteur Lima | 2011-05-04
Vous devez vous connecter pour publier un commentaire.
Vous avez deux propriétés pour un
Grid
:Ces deux devrait faire l'affaire, essayer
OriginalL'auteur Damascus
Tout en faisant de ligne et de colonne de la taille de l'arithmétique-vous pouvez travailler, vous devez savoir qu'il existe des pièges à cette approche. Lorsque vos modifications de données ou la fenêtre est redimensionnée de la grille de mise en page sera mise à jour et tout peut changer. Vous pouvez bien sûr adapter à ces changements, mais c'est plus de travail.
Au lieu de cela, si vous le pouvez, vous pouvez essayer de tout faire avec la grille à l'aide d'une colonne de colonne et de découpage. Ensuite, la grille de prendre soin de tout le sale boulot et vous pouvez vous concentrer sur l'apparence.
OriginalL'auteur Rick Sladkey
En fait, j'ai presque là. Au lieu d'utiliser
Je devrais avoir utilisé
OriginalL'auteur Lima
Vous devez utiliser ActualWidth et ActualHeight.
Par exemple:
OriginalL'auteur ste