WinForm的UI组件层顺序WinForm的UI组件层顺序(WinForm UI componen

2019-05-12 01:49发布

当我们的WinForms添加任何UI或容器,后来添加的组件来在刚才添加的组件,我们可以说,它是在一个更高的层。

如何更改添加组件后,该层的顺序或组件的订单?

Answer 1:

是不是当你在代码中动态或设计师加载组件? 如果是在设计师可以使用格式- >订单- >发送到返回格式- >订单- >置于顶层命令。 发送到返回 ,并放到前面也可在上下文菜单中提供当你当你在窗体设计器的工作,会自动出现“布局”工具栏上单击鼠标右键控制,以及。



Answer 2:

当您将超过在同一个地方一个控制,一个将结束在上面,和其他将结束underneath.Usually这是一个小的失误的结果,如不正确地使用锚定和对接功能部件以creare可调整大小的形式。在某些情况下,但是,您可能需要为特定的效果重叠控制。

当控制重叠,这是确定哪些控制上top.Essentially结束的z索引,在其自己的独特编号的layer.A控制每个控制existy具有z轴折射率层1将出现在z轴折射率层的控制上述2,如果他们overlap.Usually,一组控件的z索引由在其中添加了控制,这样就添加了最后的控制是始终在最上面的层(具有0的z-index)的顺序决定。

但是,您可以更改这些选项。

为了确定或设置一个控制的z索引,则可以使用GetChildIndex()SetChildIndex()的控制方法Collection.Here这么移动的控制,以在z索引第三层的例子。

Controls.SetChildIndex(ctrl, 2);

通常情况下,你不会需要这种发现晶control.Instead的,你只是想删除一个控制到的z-index的背面(最底层),或者把它带到top.You能通过右键点击一个控制和选择带来弗朗或发送到Back.You也可以执行以编程方式使用相同的任务,完成在设计时此功能Control.BringToFront()Control.SendToBack()方法。

ctrl.BringToFront(); // This is equivalent to Controls.SetChildIndex(ctrl,0);


Answer 3:

在设计视图中,您还可以打开“文档大纲”面板来查看当前窗体/控件的树状结构,然后拖动部件,“向上”和“向下”带给正面和背面,也进出容器。



Answer 4:

你尝试用打Z顺序 ?

另请参见: Control.SentToBack方法-大多数WinForm的控制应该借此支持这一点。



文章来源: WinForm UI components layer order