首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将图像从一种形式传递到另一种形式?

如何将图像从一种形式传递到另一种形式?
EN

Stack Overflow用户
提问于 2021-12-08 19:39:48
回答 1查看 305关注 0票数 0

我想把一张图片从form1传递给form2,我在打开的文件对话框中选择它得到图片,我想在按下按钮后使它出现在第二个表单(form2)上。

这是打开的文件对话框:

代码语言:javascript
复制
private void pictureBox1_Click(object sender, EventArgs e) {
    OpenFileDialog ofd = new OpenFileDialog();
    ofd.Filter = "Imagenes|*.jpg;*.png;*.gif";
    ofd.Title = "Profile picture";

    if (ofd.ShowDialog() == DialogResult.OK) {
       string urlArchivo = ofd.FileName;
       string nombre = ofd.SafeFileName;

       Userpic.Load(urlArchivo);
       Subirfoto.Visible = false;
    }
}

private void Button1_Click(object sender, EventArgs e) {
    if (...) {
        //MAKE THE PIC APPEAR ON FORM2
    }
}
EN

回答 1

Stack Overflow用户

发布于 2021-12-08 19:53:10

您可以将路径保存在公共字符串变量urlArchivo中,然后在启动单击事件时将图像加载到位于form2中的第二个图片框中:

代码语言:javascript
复制
private void Button1_Click(object sender, EventArgs e) {
    if (urlArchivo != "") {
         // display image in picture box 
         pictureBox2.Image = new Bitmap(urlArchivo)
    }
}

您还可以直接进行引用(因此不会加载图像两次):

代码语言:javascript
复制
pictureBox2.Image = form1.pictureBox1.Image

更好的是,您可以在表单中定义一个公共属性,并从一个到另一个获取图像:

代码语言:javascript
复制
private void Button1_Click(object sender, EventArgs e) {
    //set image of form2 as image of form1
    form2.myImage = form1.myImage
}

myImage将在每个表单中定义为property。您可以看到在表单这里中定义属性的详细信息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70280811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档