Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Align TextBox and Label text

I'm designing a UI, and I found myself itching my head : how can I align a TextBox text and a label text, which are side by side.

In design mode, it's easy, you move one with your mouse, a purple line appears and voila ! the alignment is good, but mine are code generated, so how can i align their contents ?

Thank you !

Edit : Layout is something I can't use (I don't make the rules, my boss do..)

like image 921
Clement Herreman Avatar asked Jul 23 '09 07:07

Clement Herreman


1 Answers

I like to use the FlowLayoutPanel (instead of the TableLayoutPanel) for this purpose because you don't need to fiddle with columns. Remember to remove both the Top and the Bottom anchors on every control to make them vertically centered, and set FlowLayoutControl.AutoSize = true and AutoSizeMode = GrowAndShrink.

Edit: regarding your restriction that "Layout is something I can't use": so you want instead to access the purple text baseline snapline position programmatically, at runtime? This is possible, but it's unlikely to be faster than layouts because only the designer for the control knows where it is, so you will have to create designers for all controls you need this for.

This question has some code that can be used as a starting point, but as I said, it's probably not the right approach either given the performance constraints.

like image 130
Roman Starkov Avatar answered Nov 10 '22 01:11

Roman Starkov