微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 如何使用UserControl获取Form的截图?

我想获得MainForm of Application的截图.我使用以下代码.

Bitmap bitmap = new Bitmap(MainForm.Width,MainForm.Height);
DrawToBitmap(bitmap,new Rectangle(0,bitmap.Width,bitmap.Height));
pictureBox1.Image = bitmap;

我在MainForm中有一些用户控件.我只能使用上面的代码获取MainForm的屏幕截图.我无法获得用户控件的屏幕截图.

任何人都可以建议我如何使用表单的用户控件获取Windows窗体的屏幕截图?

解决方法

这应该这样做:

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,MainForm.Size,copyPixelOperation.sourcecopy);

    //Clipboard.Setimage(bmp);

    pictureBox1.Image = bmp;
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐