如何引用其他窗体中的pictureBox(从其他窗体更改pictureBox)



我一直在用两个表单构建我的应用程序,一个是Home表单,另一个是用于显示图像的单独表单。它使用OpenFileDialog并过滤出要选择的文件。然而,我如何实际引用另一个表单上的图片框?

// open file dialog   
OpenFileDialog open = new OpenFileDialog();  
// image filters  
open.Filter = "Image Files(*.jpg; *.jpeg; *.gif; *.bmp)|*.jpg; *.jpeg; *.gif; *.bmp";  
if (open.ShowDialog() == DialogResult.OK) {  
// display image in picture box  
// How to change this to access pictureBox1 on Form2
pictureBox1.Image = new Bitmap(open.FileName);  

上面的脚本是通过按钮执行的。如何再次引用Form2中的pictureBox?

如果你的图片框位于另一个表单上,你只需要给它一个"内部";在该表单的实例中访问和操作它

var f = new PicForm();
f.picBox.Image = ....
f.Show();

但是,如果你让你的图片形式自我包含,那就更好了。添加构造函数参数

public PicForm (string path) : base()
{
if (File.Exists(path)) 
this.picBox.Image = new Bitmap(path);
}

最新更新