在我的项目中,我想在运行时订购控件,比如DataGridView
我们将如何使用display-index命令网格中的字段。
在设计级别,我添加了3 TextBox
和1 ComboBox
彼此相邻&在运行时我想订购它们,例如,前2个TextBox
应显示,然后是ComboBox
,然后是另一个TextBox
。
是否可以在运行时重新排列控件?
答案 0 :(得分:1)
Windows窗体中的每个Control
都有Location
属性。您可以通过更改此属性轻松更改控件的位置:
textBox1.Location = new Point(10, 50); // Puts the TextBox at coordinates (10,50)
坐标相对于控件容器的左上角(例如表单本身)。
在您的情况下,您可以轻松地安排这样的控件:
Control[] controls = new Control[] { textBox1, textBox2, comboBox3, textBox3 }; // These are your controls
int left = 20, top = 50; // or any other value
foreach (c in controls)
{
c.Location = new Point(left, top);
left += c.Width + 10; // space 10 pixels between controls
}