title: How does System.Drawing.Image class work?
body: <p>I was wondering why it is possible to set the Image property of a PictureBox, when the Image class is an abstract class, and therefore cannot be instantiated.</p>
  
  <p>Does the Image.FromFile() method create a Bitmap (a derived class from Image) that it then uses to display in the PictureBox? If so then when creating an image from a file that is not a .bmp ,if for example i use: </p>
  
  <pre><code>Image.FromFile("test.png")
  </code></pre>
  
  <p>does it convert this .png file into a Bitmap in memory before displaying it?</p>
  
  <p>I know how to do all of the above, and I know it works, but I am just trying to get my head around HOW it works when Image is abstract as I am not able to find much information on the matter - any explanations would be greatly appreciated!</p>