PictureBox无处可见

时间:2013-12-14 18:17:46

标签: c# winforms image visual-studio-2013 picturebox

我一直在尝试通过代码动态地向Windows窗体添加元素。 我需要创建一个PictureBox元素。所以,我有以下代码:

private void Form1_Load(object sender, EventArgs e)
    {
        //stylise form
        this.BackColor = System.Drawing.Color.Black;

        PictureBox bgui = new PictureBox();
        bgui.Image = Properties.Resources.attack_box;
        bgui.Name = "bgui";
        bgui.Location = new Point(0, 600);
        this.Controls.Add(bgui);
        bgui.Visible = true;

    }

但是,当运行此代码时,除了我之前设置的黑色背景外,我什么也得不到。我看过许多类似于我的问题;并且他们都说我需要将它添加到我已经完成的控件中,但它仍然没有显示。

如果你能让我深入了解我的错误行为,我将非常感激。

谢谢,Computo。

3 个答案:

答案 0 :(得分:0)

您需要设置Width的{​​{1}}和Height属性。

试试这个:

PictureBox

完整代码:

    bgui.Width = 500;
    bgui.Height = 500;

答案 1 :(得分:0)

原来System.Drawing.Point没有转化为屏幕上的实际像素。我将不得不调查Point如何转化为像素。

答案 2 :(得分:0)

这里的作品非常完美。指定SizeMode并更改位置。

    private void Form1_Load(object sender, EventArgs e)
    {
        //stylise form
        this.BackColor = System.Drawing.Color.Black;

        PictureBox bgui = new PictureBox();
        bgui.Image = Properties.Resources.attack_box;
        bgui.Location = new System.Drawing.Point(100, 0);
        bgui.Name = "pictureBox1";
        bgui.SizeMode = PictureBoxSizeMode.AutoSize;
        this.Controls.Add(bgui);
    }