public static Region FromHrgn (IntPtr hrgn) { if (hrgn == IntPtr.Zero) throw new ArgumentException ("hrgn"); IntPtr handle; Status status = GDIPlus.GdipCreateRegionHrgn (hrgn, out handle); GDIPlus.CheckStatus (status); return new Region (handle); }