有没有办法让 TableLayoutPanel 上的控件的文本内容正确对齐?我在第 0 列有标签,在第 1 列有文本框(或偶尔有 ComboBox 或 NumericUpDown 控件),但标签中的文本在大多数行上通常是一个或两个像素(垂直)。
问问题
23210 次
6 回答
14
选择表格布局面板中的所有控件。在属性选项卡中确保锚点设置为“左”。我认为它默认为“顶部,左侧”。
希望能把事情弄清楚。
于 2012-05-24T02:59:47.343 回答
12
几天前我正在研究它。我按要求得到了一切。尝试这个:
对于标签
- 从 Tablelayoutpanel 中分离标签
- 将dockstyle设置为顶部
- 设置锚点无
TextAlign = MiddleLeft
- 然后只需将其放在表格布局列中
- 如果您有标签背景色,请确保行样式高度与标签高度匹配。
对于文本框
- 从 Tablelayoutpanel 中分离文本框
- 将dockstyle设置为none
- 设置锚点无
TextAlign = MiddleLeft
(或根据需要)- 然后只需将其放在表格布局列中
于 2011-09-19T08:18:26.943 回答
7
您可以设置以下属性:
标签
1. Autosize= false;
2.TextAlign= MiddleLeft;
用于组合框、文本框等控件
转到视图 -> 工具栏 -> 布局
现在,您可以通过一次选择多个控件,通过工具栏轻松地对控件进行布局............
于 2010-10-22T19:41:00.567 回答
1
我建议保留锚点,只为太高的控件添加上边距。当我添加标签时,3,6,3,0 的边距对我来说是正常的。正如 Javed 所说,您可以通过单击控件来选择多个控件。令我恼火的是 ComboBoxes 比 Texboxes 大一个像素。不过对此也无能为力。
于 2011-09-05T23:27:44.233 回答
0
我通常做的是将它们放在一个容器中,例如一个面板,然后将它们相对于那个固定。添加容器的优点是您还可以减少 Win 处理程序的数量。在那种情况下,这并不重要,因为您已经有了 TablelayoutPanel,所以基本上对于所有控件,您只有一个处理程序。
于 2010-10-06T15:09:14.260 回答
0
哦,你的意思是标签的文本基线与其他控件不同?如果是这样,请尝试移除垂直锚点。您也可以使用边距。
于 2010-09-09T11:56:57.787 回答