在运行时更改PictureBox控件内的图像

时间:2011-11-11 14:15:00

标签: winforms

我在Windows窗体中有一个PictureBox控件。我在设计时设置了一个图像,但是想在运行时更改它。我设置了这个正在执行的功能,但图像没有改变。知道为什么??

public void RefreshImage()
    {
        pbPreview.Image = Image.FromFile("C:/test.jpg");
    }

编辑:好的,这很奇怪。为了测试目的,我在代码中添加了一行:

pbPreview.Image = Image.FromFile("C:/test.jpg");
pbPreview.ImageLocation = "http://www.indianorphanages.net/images/india-political-map.gif";

现在第一个图像(test.jpg)出现,大约一秒钟,然后被第二个图像覆盖(map.gif)。显然Image.FromFile行正在运行,但需要进行某种刷新。我试过了

this.Refresh();

但它也没有效果。

1 个答案:

答案 0 :(得分:1)

我测试了你的代码,这些是我的结果。

按下按钮:

enter image description here

几秒后:

enter image description here

代码从网络获取第二张地图因此延迟。这不是一次刷新。您可以在文件路径中使用正斜杠,因此语法不是问题。

我认为关于图像来源的图片框只有相互矛盾的陈述:

//Pick one of these, they are both image setters

pictureBox1.Image = Image.FromFile("C:/Users/justin/Desktop/jMSrb.jpg");
pictureBox1.ImageLocation = "http://www.indianorphanages.net/images/india-political-map.gif";