我想获得MainForm of Application的截图。我使用以下代码。
Bitmap bitmap = new Bitmap(MainForm.Width, MainForm.Height);
DrawToBitmap(bitmap, new Rectangle(0, 0, bitmap.Width, bitmap.Height));
pictureBox1.Image = bitmap;
我在MainForm中有一些用户控件。我只能使用上面的代码获取MainForm的屏幕截图。我无法获得用户控件的屏幕截图。
有人可以建议我如何使用表单的用户控件获取Windows窗体的屏幕截图吗?
答案 0 :(得分:1)
这应该这样做:
private void CaptureForm()
{
var bmp = new Bitmap(MainForm.Width, MainForm.Height, PixelFormat.Format32bppArgb);
var g = Graphics.FromImage(bmp);
g.CopyFromScreen(MainForm.Location.X, MainForm.Location.Y, 0, 0,
MainForm.Size, CopyPixelOperation.SourceCopy);
//Clipboard.SetImage(bmp);
pictureBox1.Image = bmp;
}