正如标题所述,我正在寻找一种方法来控制物品停靠在我控制之上的顺序。
我玩过Windows窗体设计师,我似乎无法找到RightClick->Order->SendToFront
正在做什么,因为那完全我想要发生什么。至于我可以发生的事情,当我将我的内容添加到我的控件中时,最新的内容始终位于顶部,我希望新的内容位于底部,最旧的内容位于顶部。
摘要:在WinForms(C#)中有一种简单的方法来控制事物停靠在控件两侧的顺序吗?
编辑: 我必须从后面的代码执行此操作,因为我添加了我的控件,我不能使用WinForm的设计器的任何功能,但我是什么试图做,模仿WinForms Designer SendToBack
和SendToFront
功能
答案 0 :(得分:127)
转到视图→其他窗口→文档大纲。
在该窗口中拖动控件,使对接按照您的喜好进行。
答案 1 :(得分:65)
使用以下方法:
myControl.SendToBack();
myControl.BringToFront();
答案 2 :(得分:11)
正如你所说,添加到控件集合中的最新控件是顶部控件。如果你需要在底部添加一个较新的控件,我建议创建一个控件列表,将控件添加到列表中,反转列表并将列表添加到控件集合中。
List<Control> controls = new List<Control();
controls.Add(new myFirstControl());
controls.Add(new mySecondControl());
controls.Reverse();
this.Controls.AddRange(controls.ToArray());
答案 3 :(得分:4)
控件有两种方法可以实现您的目标:BringToFront
和SendToBack
。
答案 4 :(得分:4)
控件添加到Controls集合的顺序决定了停靠顺序。
答案 5 :(得分:2)
(为了显示另一种选择): 在Visual Studio 2012(及更高版本)中:
答案 6 :(得分:1)
请注意,以编程方式执行此操作时,有一种非常简单的方法可以实现此目的,即:
echo $conexionbd;
答案 7 :(得分:-3)
使用FlowLayoutPanel它完全符合你的要求。