我的表格中有一个表格layoutpanel。它有几行(充满控件):

label10   ---   textbox10     ----    label20
label11   ---    textbox11   ---    label21
label12    ---   textbox12   ---    label22
label13    ---   textbox13    ---   label23
label14    ---   textbox14    ---   label24


现在我想使用此代码在表中间添加新行:

myLayoutpanel.Controls.Add(label333, 0, 3);

myLayoutpanel.Controls.Add(textbox333, 0, 3);

myLayoutpanel.Controls.Add(label444, 0, 3);


它将在第3行之后添加新行。
通常,结果按真实顺序排列:

label333   ---   textbox333   ---   label444


但是对于某些行,这似乎是错误的:例如,如果加法发生在第4行之后:

label444  ---    label333   ---   textbox333

最佳答案

你不会发疯的。这是.NET Framework 4.5中引入的错误。请参阅参考

A .NET 4.5 incompatibility



System.Windows.Forms.TableLayoutPanel Behavior Change .NET 4.5 Framework

10-08 03:32