Certains contrôles WPF (comme le Button
) semble consommer allègrement tout l'espace disponible dans son conteneur si vous ne spécifiez pas la hauteur qu'il doit avoir.
Et d'autres, comme ceux que je dois utiliser en ce moment, les (multilignes) TextBox
y el ListBox
semblent plus soucieux d'occuper l'espace nécessaire à leur contenu, et pas plus.
Si vous mettez ces gars-là dans une cellule dans un UniformGrid
ils s'étendront pour s'adapter à l'espace disponible. Cependant, UniformGrid
ne sont pas adaptées à toutes les situations. Que se passe-t-il si vous avez une grille dont certaines lignes sont définies à une * hauteur pour diviser la hauteur entre elle-même et d'autres * lignes ? Et si vous aviez une StackPanel
et vous avez un Label
, a List
et un Button
Comment faire pour que la liste occupe tout l'espace qui n'est pas occupé par l'étiquette et le bouton ?
Je pensais qu'il s'agissait d'une exigence de base en matière de mise en page, mais je n'arrive pas à trouver comment faire en sorte qu'ils remplissent l'espace qu'ils pourraient occuper (en les mettant dans une DockPanel
et le mettre en mode remplissage ne fonctionne pas non plus, semble-t-il, puisque les DockPanel
n'occupe que l'espace nécessaire à ses sous-commandes).
Une interface graphique redimensionnable serait assez horrible si vous deviez jouer avec Height
, Width
, MinHeight
, MinWidth
etc.
Pouvez-vous lier votre Height
y Width
à la cellule de la grille que vous occupez ? Ou existe-t-il un autre moyen de procéder ?
1 votes
UniformGrid est incroyable, ma nouvelle balise par défaut. J'aimais la simplicité des Stackpanels (qui me rappelle un div) mais Uniform Grid fait exactement ce dont j'ai besoin.
1 votes
Re UniformGrid. L'accent est mis sur Uniform. Il semble que l'on ne puisse pas ajuster la largeur des colonnes ni la hauteur des lignes. Elle ne convient que si chaque élément de contenu a la même taille. J'ai remplacé mon StackPanel par une Grid, et Stretch a alors fonctionné comme je l'attendais.
0 votes
Cet article m'a aidé à étirer les zones de texte.