Kornelije Petak
Kornelije Petak

Reputation: 9572

Can Margin be enforced even with Dock property set?

I have a WinForms Form with a few controls on it. All of them are GroupBox controls and I want them stacked, with a vertical margin set between them. I have set the Dock property to Top and it stacks them alright, but ignores the margin (controls are as close to each other as they can be).

Can these margins still somehow be enforced? Basically, it would calculate the regular docked position (as if the margin was 0) then apply the margin. Is something like this possible?

The other way I've tried this is with FlowLayoutPanel with TopDown option. However, then I need to manually set the size and Left/Right anchors.

Is there any easy way to acomplish this scenario or should I stick with what I already have?

Upvotes: 45

Views: 38665

Answers (3)

Haz
Haz

Reputation: 213

Add a dummy transparent panel docked between each textbox with a height equal to the exact distance you require.

Upvotes: 9

sunnyaprilafternoon
sunnyaprilafternoon

Reputation: 409

Place each GroupBox in a Panel, Set Panel Dock Property to Top, Group Box Dock Property to Fill. Then set Padding on the panels.

Upvotes: 40

LarsTech
LarsTech

Reputation: 81675

The set docking property will ignore your padding properties between GroupBox controls, so yes, your best bet is the Flow or Table panels to do this.

Upvotes: 20

Related Questions