Isn't that enough:
http://msdn.microsoft.com/en-us/library/system.windows.forms.control.backgroundimage.aspx[
^]?
If you need something more sophisticated, simply render whatever your want of the surface of the form overriding the virtual method
System.Windows.Forms.Control.OnPaint
or handling the form's event
Paint
. If the image should change from time to time, change the data used in rendering (index of the image in the image list, for example) and call
System.Windows.Forms.Control.Invalidate
.
—SA