web-dev-qa-db-fra.com

La marge peut-elle être appliquée même avec le jeu de propriétés Dock?

J'ai un WinForms Form avec quelques contrôles dessus. Tous sont des contrôles GrouBox et je veux qu'ils soient empilés, avec une marge verticale définie entre eux. J'ai défini la propriété Dock sur Top et elle les empile bien, mais ignore la marge (les contrôles sont aussi proches les uns des autres qu'ils peuvent l'être).

Ces marges peuvent-elles encore être appliquées d'une manière ou d'une autre? Fondamentalement, il calculerait la position ancrée normale (comme si la marge était 0) puis appliquait la marge. Est-ce que quelque chose comme ça est possible?

L'autre façon que j'ai essayé c'est avec FlowLayoutPanel avec TopDown option. Cependant, je dois ensuite définir manuellement la taille et les ancres gauche/droite.

Existe-t-il un moyen facile de réaliser ce scénario ou dois-je m'en tenir à ce que j'ai déjà?

36
Kornelije Petak

La propriété d'ancrage définie ignorera vos propriétés de remplissage entre les contrôles GroupBox, donc oui, votre meilleur pari est les panneaux Flow ou Table pour ce faire.

11
LarsTech

Placez chaque GroupBox dans un panneau, définissez la propriété Dock Dock du panneau sur Top, la propriété Group Dock Dock sur Fill. Ensuite, réglez le rembourrage sur les panneaux.

31

Ajoutez un panneau transparent factice ancré entre chaque zone de texte avec une hauteur égale à la distance exacte dont vous avez besoin.

5
Haz