在C#中,如何在子窗体的picturebox中显示主窗体picturebox中的图像?

如题所述

嗯...可以选择为子窗体(Form2)增加一个构造函数:

// 为Form2增加一个构造函数
public Form2(Image img)
{
// 窗体自动构造函数--自动生成的
InitializeComponent();

// 为子窗体的pictureBox赋值图片
this.pic_ISFrom2.Image = img;
}

在父窗体打开子窗体的时候,为这个重载的构造函数的参数赋值:

// 假设在点击按钮的时候打开子窗体
private void button1_Click(object sender, EventArgs e)
{
// 指定一个图片
Image bitMap = Resources.image11;

// 将图片传到子窗体
Form2 frm2 = new Form2(bitMap);
frm2.ShowDialog();
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-06-12
方法很多
子窗体构造的时候可以穿过去,也可以用个静态属性传过去
以下是静态属性的
public static PictureBox pic = new PictureBox();
private void Form1_Load(object sender, EventArgs e)
{
pic.Image = pictureBox1.Image;
pic.SizeMode = pictureBox1.SizeMode;
pic.Size = pictureBox1.Size;
}
private void button1_Click(object sender, EventArgs e)
{
Form3 f3 = new Form3();
f3.Show();
}

子窗体的
private void Form3_Load(object sender, EventArgs e)
{

pictureBox1.Image = Form4.pic.Image;
pictureBox1.SizeMode = Form4.pic.SizeMode;
pictureBox1.Size = pictureBox1.Size;
}本回答被提问者和网友采纳
第2个回答  2012-06-12
动态加载,把主窗体的pictureBox的ImageLocation 传到子窗体,子窗体就可以显示了
this.pictureBox1.ImageLocation = "D://image.jpg";
第3个回答  2012-06-12
在子窗体构造的时候加个参数用来传送主窗体picturebox的图像
相似回答