BufferedGraphics
Provides a graphics buffer for double buffering.
                
Gets a  Graphics object that outputs to the graphics buffer.
Releases all resources used by the  BufferedGraphics object.
Writes the contents of the graphics buffer to the specified  Graphics object.
Writes the contents of the graphics buffer to the default device.
Writes the contents of the graphics buffer to the device context associated with the specified  IntPtr handle.