делать то, что вы просите, на самом деле не рекомендуется, см., Например, http://blogs.msdn.com/b/greg_schechter/archive/2006/05/02/588934.aspx
Если вы действительно хотите сделать что-то подобное;Вот жуткий способ сделать это:
[DllImport("User32.dll")]
public static extern IntPtr GetDC(IntPtr hwnd);
[DllImport("User32.dll")]
public static extern void ReleaseDC(IntPtr dc);
protected override void OnPaint(PaintEventArgs e)
{
IntPtr desktopDC = GetDC(IntPtr.Zero);
Graphics g = Graphics.FromHdc(desktopDC);
g.DrawString("Test", new Font(FontFamily.GenericSerif, 12), Brushes.Blue, 300, 300);
g.Dispose();
ReleaseDC(desktopDC);
}
Обратите внимание, что я НЕ рекомендую никому делать это, поскольку я не думаю, что приложения должны делать подобные вещи.Если вы хотите нарисовать что-то, вы должны сделать это в своей форме / элементах управления.