9

I was wondering what the difference is between Image, Bitmap and BitmapImage in WPF & C#.

Can someone help me out?

Mark A. Donohoe
  • 25,744
  • 22
  • 126
  • 259
Tom Kerkhove
  • 2,131
  • 4
  • 25
  • 40

2 Answers2

17

Image is a base abstract class representing images in GDI+. Bitmap is a concrete implementation of this base class.

BitmapImage is a way to represent an image in a vector based GUI engine like WPF and Silverlight. Contrary to a Bitmap, it is not based on GDI+. It is based on the Windows Imaging Component.

There are ways to load a BitmapImage from a Bitmap.

Community
  • 1
  • 1
Darin Dimitrov
  • 994,864
  • 265
  • 3,241
  • 2,902
11

WinForms/GDI+ uses the abstract class System.Drawing.Image and its implementation Bitmap.

WPF uses the abstract class System.Windows.Media.ImageSource (and BitmapSource) and its implementation BitmapImage.

WPF also has a control named Image, which is a FrameworkElement that contains and displays an ImageSource.

It took me a while to untangle that mess of terminology...

Mark
  • 318
  • 4
  • 8