C# 将picturebox添加到面板
我有一个Windows窗体应用程序,其中包含一个面板(称为panel1)和一个按钮。单击按钮时,我试图添加并显示一个新的PictureBox,但我的代码无法正常工作C# 将picturebox添加到面板,c#,winforms,panel,picturebox,C#,Winforms,Panel,Picturebox,我有一个Windows窗体应用程序,其中包含一个面板(称为panel1)和一个按钮。单击按钮时,我试图添加并显示一个新的PictureBox,但我的代码无法正常工作 private void button1_Click_1(object sender, EventArgs e) { PictureBox picture = new PictureBox(); picture.Location = new System.Drawing.Point(0, 0); pictur
private void button1_Click_1(object sender, EventArgs e)
{
PictureBox picture = new PictureBox();
picture.Location = new System.Drawing.Point(0, 0);
picture.Name = "pictureBox1";
picture.Size = new System.Drawing.Size(75, 50);
picture.BackColor = Color.Black;
panel1.Controls.Add(pictureBox1);
}
我的面板“停靠”已设置为填充
完整代码:
--更新--
我刚刚意识到我的错误:我使用了错误的变量名:panel1.Controls.Add(pictureBox1);当它应该是panel1.Controls.Add(图片) 试试这个
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
PictureBox pictureBox1 = new PictureBox();
}
private void button1_Click_1(object sender, EventArgs e)
{
pictureBox1.Location = new System.Drawing.Point(50,50);
pictureBox1.Name = "pictureBox1";
pictureBox1.Size = new System.Drawing.Size(75, 50);
pictureBox1.BackColor = Color.Black;
panel1.Controls.Add(pictureBox1);
}
}
面板有多大?我希望大于200x200?当然你确实创建了pbox,否则你会得到一个空对象引用错误,对吧。。?pBox的visible=true,对吗?您确定定义了
panel1
(即没有NullReferenceException)?是否确实已将事件按钮1\u Click\u 1
添加到该特定按钮的单击中?是的,我没有编译错误,它运行正常。是,定义了panel1。在哪里定义了picture
?而面板1有多大?我刚刚更改了你的picture.Location=新点(200200)代码>到picture.Location=新点(0,0)代码>对我有效。你的代码是panel1.Controls.Add(pictureBox1)代码>我想你想要面板1.控件.添加(图片)代码>相反。这清楚地将图片添加到表单加载中。OP想在点击按钮时添加图片。@sab669不是学究,请检查编辑历史记录。我的评论在当前编辑之前。