Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在运行时将PictureBox添加到表单_C#_Winforms_Controls - Fatal编程技术网

C# 在运行时将PictureBox添加到表单

C# 在运行时将PictureBox添加到表单,c#,winforms,controls,C#,Winforms,Controls,我正在制作一个C#程序,它将生成一个PictureBox: private void Form1_Load(object sender, EventArgs e) { PictureBox picture = new PictureBox { Name = "pictureBox", Size = new Size(16, 16), Location = new Point(100, 100), Image = Im

我正在制作一个C#程序,它将生成一个PictureBox:

private void Form1_Load(object sender, EventArgs e)
{
    PictureBox picture = new PictureBox
    {
        Name = "pictureBox",
        Size = new Size(16, 16),
        Location = new Point(100, 100),
        Image = Image.FromFile("hello.jpg"),
    };
}

但是,该控件没有显示在我的窗体上。为什么不呢?

控件(如PictureBox)只是一个类。它没有什么特别之处,因此
新的PictureBox
不会神奇地出现在您的表单上

实例化和初始化控件后,只需将该控件添加到容器的控件集合:

this.Controls.Add(picture);
你可以试试这个。。 您需要使用this.Controls.Add(图片)

private void Form1_Load(object sender, EventArgs e)
    {
        var picture = new PictureBox
        {
            Name = "pictureBox",
            Size = new Size(16, 16),
            Location = new Point(100, 100),
            Image = Image.FromFile("hello.jpg"),

        };
        this.Controls.Add(picture);
    }
如果您想在运行时从表单中删除

 //remove from form
 this.Controls.Remove(picture);
  //release memory by disposing
 picture.Dispose();

)

除非该映像始终与可执行文件位于同一目录中,否则应包含该文件的完整路径。