我想以编程方式创建一个面板并添加一些pictureBoxes,我通过for循环选择图像。我尝试了很多方法,但表格显示为空。 我的代码是:
private void draw_pipeline()
{
Panel pnl = new Panel();
pnl.Size = new System.Drawing.Size(1130, 145);
pnl.Location = new Point(380, 260);
pnl.BorderStyle = BorderStyle.FixedSingle;
for (int i =0; i<3; i++)
{
PictureBox pic = new PictureBox();
pic.SizeMode = PictureBoxSizeMode.Zoom;
switch (i)
{
case 0:
{
pic.Location = new Point(3, 15);
pic.Size = new Size(73, 121);
pic.Image = new Bitmap("if.png"); break;
}
case 1:
{
pic.Location = new Point(76, 15);
pic.Size = new Size(73, 121);
pic.Image = new Bitmap("line.png"); break;
}
}
pnl.Controls.Add(pic);
}
}
我要创建的结果如下图所示,其中包含两个带有两个图像的图片框,if.png是if-box图像,line.png是行图像。我重复我的代码的结果是表单显示空!有什么帮助吗?
答案 0 :(得分:4)
您需要在某个时刻将Panel
添加到Form
,就像您将PictureBoxes
添加到Panel
一样:
this.Controls.Add(pnl);
(this
假设您的draw_pipeline
方法属于您尝试添加Form
的{{1}}。)