Has anyone managed to copy and paste the contents of WinForm as MetaFile? I can copy and paste a 'screen dump' of the Winform. My WinForm has several ActiveX controls on it - so just Calling OnPaint() with my own Graphics does not work.
The code to copy and paste a 'screen dump': [System.Runtime.InteropServices.DllImportAttribute("gdi32.dll")] private static extern bool BitBlt( IntPtr hdcDest, // handle to destination DC int nXDest, // x-coord of destination upper-left corner int nYDest, // y-coord of destination upper-left corner int nWidth, // width of destination rectangle int nHeight, // height of destination rectangle IntPtr hdcSrc, // handle to source DC int nXSrc, // x-coordinate of source upper-left corner int nYSrc, // y-coordinate of source upper-left corner System.Int32 dwRop // raster operation code ); private void button4_Click(object sender, System.EventArgs e) { Graphics g1 = this.CreateGraphics(); Image MyImage = new Bitmap (this.ClientRectangle.Width,this.ClientRectangle.Height, g1); Graphics g2 = Graphics.FromImage(MyImage); IntPtr dc1 = g1.GetHdc(); IntPtr dc2 = g2.GetHdc(); BitBlt(dc2, 0, 0, this.ClientRectangle.Width, this.ClientRectangle.Height, dc1, 0, 0, 13369376); g1.ReleaseHdc(dc1); g2.ReleaseHdc(dc2); Clipboard.SetDataObject(MyImage); } You can read messages from the DOTNET archive, unsubscribe from DOTNET, or subscribe to other DevelopMentor lists at http://discuss.develop.com.