Search code examples
c#visual-studioimageembedded-resource

C#: Accessing image added to project folder


I would like to know following: I added the folder "Graphics" into my project and stuck a BMP in it. Now I would like to load the image from my code, but I cannot figure out how. I know its simple with resources but is there a way without adding the image into resources? Thanks


Solution

  • I once wondered about this too, so I figured it out and put it in a blog post. For your example, it should be something like this:

    var a = Assembly.GetExecutingAssembly(); // Or another Get method if you need to get it from some other assembly
    
    var image = Image
        .FromStream(a.GetManifestResourceStream("DefaultNameSpace.Graphics.image.bmp"));
    

    Remember to mark the image as an Embedded Resource and to dispose of the image when done so you don't get any leakage :)