好的,让我再解释一遍,我的问题是我想要显示图像。但是我想在没有opendialogfile的情况下尝试这样做:
pictureBox1.Image = Image.FromFile("C:\\Users\\Abdullah\\Documents\\Visual Studio 2013\\Projects\\Maker\\Maker\\add.png");// it works但是我不想这样做,因为它会在部署时导致错误。我想做的是:
pictureBox1.Image= Image.FromFile("add.png");//因为该图片已经在项目文件夹中
在本例中,它显示了错误,该文件现在没有找到,希望,所以我解释了:)
发布于 2014-09-20 10:51:31
假设您正在对图像的路径进行硬编码,并且该图像确实存在于该路径中,那么当使用常量字符串时,应该记住避免反斜杠。
试着
pictureBox1.ImageLocation = @"C:\Users\Abdullah\Documents\Visual Studio 2013
\Projects\Maker\Maker\Resources\add.png";或
pictureBox1.ImageLocation = "C:\\Users\\Abdullah\\Documents\\Visual Studio 2013
\\Projects\\Maker\\Maker\\Resources\\add.png";(为提高可读性,警告字符串分为两行。它应该在一条单线上)
请参阅How do I write a backslash?
编辑:基于下面评论的,那么图像文件夹似乎总是存在于您的项目中(当它将被部署到客户机器上时),然后您可以这样写
pictureBox1.ImageLocation = Path.Combine(Application.StartupPath, "Images", "add.png");或
string imageFile = Path.Combine(Application.StartupPath, "Images", "add.png");
pictureBox1.Image= Image.FromFile(imageFile);但是回顾一下您的例子:它是图像还是资源?
https://stackoverflow.com/questions/25947026
复制相似问题