D'accueil pour de multiples contrôles, on remplit l'espace restant
Je suis en train de quai N nombre de contrôles dans un récipient. Je les veux toutes pour remplir toute la largeur, mais la pile. Je veux un contrôle particulier (actuellement la dernière) pour remplir l'espace restant, alors que tous les autres sont de dimensions fixes.
Ce:
Button b1 = new Button() { Text = "Button 1", Dock = DockStyle.Top };
Button b2 = new Button() { Text = "Button 2", Dock = DockStyle.Top };
Button b3 = new Button() { Text = "Button 3", Dock = DockStyle.Fill };
Controls.Add(b1);
Controls.Add(b2);
Controls.Add(b3);
Ce produit:
Comme vous pouvez le voir, le Bouton 3 est en train de faire exactement ce que je disais à: Fill
le parent. Mais ce n'est pas ce que je voulez à faire. Hormis manuellement en plaçant, de manutention et d'événements de redimensionnement, etc. comment puis-je faire Bouton 3 remplir l'espace restant?
Note: je suis pas à l'aide de la designer.
- Voir [ici][1]. C'est un doublon. [1]: stackoverflow.com/questions/154543/...
Vous devez vous connecter pour publier un commentaire.
Tout en ajoutant
b3.BringToFront()
(après qu'il a été ajouté àControls
) fonctionne, la solution la plus simple ici est de simplement changer l'ordre dans lequel les boutons sont ajoutés àControls
. Le code suivant fonctionne parfaitement:Le résultat:
Si vous regardez de plus près les frontières de ce petit exemple, cela semble fonctionner mieux que
BringToFront()
.Fondamentalement la
DockStyle.Fill
de contrôle doivent d'abord être ajouté dans leControls
collection.Utiliser Devant sur le Bouton 3 dans le concepteur, ou composez ce code:
DockStyle.Top
) mais je ne pense pas à déplacer monDockStyle.Fill control
. Voir ma réponse pour une prise différente.bouton 1 et 2 devraient avoir dock propriété est définie sur haut et pour faire des boutons 3 prendre le reste de l'espace, vous pouvez définir sa propriété dock vers le bas.
dock = remplissage fera le bouton remplir tout l'espace et pas seulement le reste de l'espace. Bas fonctionnera tout aussi haut, mais d'ancrage à la partie inférieure du conteneur parent. Appliquer les boutons dans l'ordre de 1, 2, 3.
En outre, vous pouvez définir la propriété dock vers le haut sur tous les trois et simplement la taille du bouton trois différemment.