当我在TableLayoutPanel上删除一个控件(例如Label或TextBox)时,它(当然还有许多其他属性)具有以下属性:
Cell.Column
Cell.Row
Column
Row
...但是这些控件通常没有这些属性(IOW,标签和未放在TLP上的TextBox都没有它们。)
如何以编程方式为这些属性赋值(对于我想嵌入TLP的控件)?
这是我现有的标签代码:
. . .
lblName = string.Format("label{0}", i);
var lbl = new Label()
{
Name = lblName,
Parent = tableLayoutPanelPlatypi,
Column = ColNum, // Doesn't compile; Column property not recognized
Row = i - 1, // Doesn't compile; Row property not recognized
Dock = DockStyle.Fill,
Margin = 0,
TextAlign = ContentAlignment.MiddleCenter,
Text = GettysburgAddressObfuscation()
};
答案 0 :(得分:4)
您可以通过TableLayoutPanel的控件添加方法添加它们:
tableLayoutPanelPlatypi.Controls.Add(lbl, ColNum, i - 1);
或者如您所指出的,每个属性都可以单独设置:
tableLayoutPanelPlatypi.SetColumn(lbl, ColNum);
tableLayoutPanelPlatypi.SetRow(lbl, i - 1);
表单设计器正在为您方便地添加这些属性,但如果您在已添加到TableLayoutPanel的控件中查看设计器文件,它将使用上述格式。