我在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();
但它也没有效果。
答案 0 :(得分:1)
我测试了你的代码,这些是我的结果。
按下按钮:
几秒后:
代码从网络获取第二张地图因此延迟。这不是一次刷新。您可以在文件路径中使用正斜杠,因此语法不是问题。
我认为关于图像来源的图片框只有相互矛盾的陈述:
//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";