将窗体转换为图片

Kri*_*hna 1 .net drawing winforms

我环顾四周,我可能把谷歌与关键词混淆了.

我希望在我的Windows窗体应用程序中实现一个支持模块,当用户点击一个按钮时,会向支持团队发送一封电子邮件,附带一个屏幕截图(相关表单)

我正在寻找类似的东西

form.SaveAsImage(路径)

关于如何实施或者我错过了显而易见的任何想法

.net 3.5

key*_*rdP 6

尝试使用Control.DrawToBitmap方法,并确保在运行代码时表单具有焦点.

using (Graphics gfx = form.CreateGraphics())
{
    using (Bitmap bmp = new Bitmap(form.Width, form.Height, gfx))
    {
        form.DrawToBitmap(bmp, new Rectangle(0, 0, form.Width, form.Height));
        bmp.Save(fileName);
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 您似乎没有使用Graphics对象(gfx).这条线是否必要? (4认同)
  • 焦点是不相关的,即使应用程序在视觉工作室后面,我的表单也正确转储:) (2认同)