PictureBoxes和Zorder [.NET]

时间:2009-03-25 19:53:08

标签: .net picturebox

我很难在彼此顶部显示多个(最多5个)图片框,但能够看到所有这些图片框。只会出现第一个和最后一个。我从下到上显示它们,正确设置它们的位置并使用BringToFront()函数。有没有人有解决方案(如果有的话)?谢谢你的帮助!

2 个答案:

答案 0 :(得分:2)

不确定实际问题是什么;以下代码将5个堆叠的PictureBox es添加到表单中,并对其进行配置以使其全部可见。

private void AddStackedPictureBoxes()
{
    for (int i = 0; i < 5; i++)
    {
        PictureBox pb = new PictureBox();

        pb.BackColor = Color.FromArgb(i * 50, i * 50, i * 50);
        pb.BorderStyle = BorderStyle.FixedSingle;

        pb.Location = new Point(i * 10, i * 10);
        pb.Size = new Size((5 - i) * 20, (5 - i) * 20);

        Controls.Add(pb);

        pb.BringToFront();
    }
}

也许这会让你深入了解你遇到问题的原因。

例如,如果在将控件添加到表单之前调用BringToFront(),则不会产生任何影响。

答案 1 :(得分:0)

务必将每种背景颜色设置为透明。

正如Daniel所说,BringToFront()仅在控件已经在表单上时才有效。