我已经阅读了几篇关于此的文章,但似乎都没有帮助。在以下情况下如何对齐标签和文本框:
Using frm As New frmWithTableLayout
frm.TableLayoutPanel1.ColumnCount = 2
frm.TableLayoutPanel1.RowCount = 3
'create report Type'
Dim lblReportType As New Label
lblReportType.Text = "Report Type"
lblReportType.Dock = DockStyle.Right
Dim reportType As New System.Windows.Forms.TextBox()
reportType.Text = "Income"
frm.TableLayoutPanel1.Controls.Add(lblReportType, 0, 0)
frm.TableLayoutPanel1.Controls.Add(reportType, 1, 0)
End Using
最佳答案
标签和文本框在 TableLayoutPanel 中使用 Anchor 属性对齐。通常,Anchor 确定在调整大小时控件将坚持父控件的哪条边。但是对于 TableLayoutPanel,Anchor 属性确定单元格内的对齐方式。 TextAlign 对 TLP 内的标签对齐没有影响。
来自 MSDN:
将 Button 控件的 Anchor 属性的值更改为 Left。 Button 控件移动到与单元格的左边框对齐。
注意:此行为不同于其他容器控件的行为。在其他容器控件中,子控件在设置Anchor 属性时不会移动,锚定控件与父容器边界之间的距离在设置Anchor 属性时是固定的。
https://msdn.microsoft.com/en-us/library/ms171691%28v=vs.90%29.aspx
关于c# - 如何在 TableLayoutPanel 中对齐文本框和标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8000731/