ShapeContainer没有停留在PictureBoxes的前面

时间:2015-06-03 15:25:26

标签: vb.net visual-studio-2010 powerpacks

我在Visual Studio 2010中有一个GUI,它有几个PictureBoxes,LineShapes / Rectangles和Labels / TextBoxes。 LineShapes / Rectangles需要位于PictureBoxes的前面,而Labels / TextBox则需要位于LineShapes / Rectangles的前面。

几个月来,当我在表单的Load事件处理程序中按所需顺序调用BringToFront()方法时,我的GUI工作正常。我首先调用了ShapeContainer的BringToFront()方法,然后为所有标签/文本框调用了BringToFront()方法。

突然之间,我的PictureBoxes开始出现在我的LineShapes / Rectangles前面。将我的最新代码与我上一个工作标记进行比较表明,这些对象没有任何变化。我尝试在我的表单的Load事件处理程序中为PictureBoxes调用SendToBack()方法,但它没有效果。

有人可以解释为什么这种行为会自发地改变我,以及我应该做些什么来确保正确显示我的PictureBoxes,LineShapes / Rectangles和Labels / TextBoxes?

1 个答案:

答案 0 :(得分:0)

如果我在Form的Paint事件处理程序中调用我的所有PictureBoxes SendToBack方法,我似乎再次得到了我想要的行为。

奇怪的是,我无法为那里的所有其他对象调用BringToFront方法,或者我的LineShapes / Rectangles都消失了:/

现在这解决了我的问题,但我希望这种行为不再发生变化。