我正在使用Windows Forms在C#中开发一个新的桌面应用程序。
在我的一个表单中,每次用户执行特定操作时,我都会设置动态加载新图片的"Picture Box"
控件。更改图片的代码如下:
this.pictureBox1.Image = Image.FromFile(PicURI);
我面临的唯一问题是有时它会显示红叉而不是显示正确的图像。我调试应用程序,发现PicURI
包含正常的图像路径,所以我不明白问题在哪里?
编辑: 从
更改代码this.pictureBox1.Picture = Image.FromFile(PicURI);
到
this.pictureBox1.Image = Image.FromFile(PicURI);
答案 0 :(得分:4)
试试这个
this.pictureBox1.Image = Image.FromFile(PicURI);
答案 1 :(得分:2)
你真的在使用PictureBox
吗?它没有Picture属性。如果您的意思是PictureBox
,则可以使用Image
deepi
属性
编辑:
红十字表示内部已抛出异常。由于PictureBox
已经处理了异常,因此您并未意识到这一点。但是,通过在Thrown
Debug -> Exceptions
上的特定异常,您可以将VS设置为在异常发生时中断(即使已处理)
答案 2 :(得分:0)
他正在使用一些带有图片框的用户控件。 Picture是用户控件中的公共属性,它返回pictureBox的图像。
我认为它显示红叉,因为您已在用户控件的图片框中设置了红叉图像。某些图片格式无法直接从Image.FromFile()中读取,在这种情况下,它显示相同。