I have a program in C# with a PictureBox
object inside a Form
. How do I change its picture? The pictures to chose from are in bin/Pics; they are jpeg in format, if that matters..
Asked
Active
Viewed 1.5e+01k times
23

Steven
- 1,709
- 3
- 17
- 27
3 Answers
43
Assign a new Image
object to your PictureBox
's Image
property. To load an Image
from a file, you may use the Image.FromFile
method. In your particular case, assuming the current directory is one under bin
, this should load the image bin/Pics/image1.jpg
, for example:
pictureBox1.Image = Image.FromFile("../Pics/image1.jpg");
Additionally, if these images are static and to be used only as resources in your application, resources would be a much better fit than files.
-
2Of course, it depends on what you are going to do with the images. I prefer loading images from a `Stream` because the `FromFile()` method keeps the file handle open until the end of the applicaition life time. This can lead to unwanted side effects when you try to overwrite the image with a file that has the same name, for example. – Jens H Jul 14 '12 at 23:00
-
Just to add to the above, I couldn't get my images to display then remembered that you need to add double \\ s for example;pictureBox1.Image = Image.FromFile("C:\\Users\\bob\\Documents\\music.jpg"); – HeavyHead Dec 18 '18 at 22:24
4
If you have an image imported as a resource in your project there is also this:
picPreview.Image = Properties.Resources.ImageName;
Where picPreview is the name of the picture box and ImageName is the name of the file you want to display.
*Resources are located by going to: Project --> Properties --> Resources

vicsar
- 301
- 5
- 16