2
A
답변
3
나는이 blog post이 도움이 될 것입니다 생각합니다.
using (Bitmap bitmap = new Bitmap(ParentForm.Size.Width, ParentForm.Size.Height))
{
using (Graphics g = Graphics.FromImage(bitmap))
{
g.CopyFromScreen(new Point(ParentForm.DesktopLocation.X, ParentForm.DesktopLocation.Y), new Point(0, 0), ParentForm.Size);
}
bitmap.Save(@"C:\test.jpg", ImageFormat.Jpeg);
}
1
그것을 시도하지 마십시오,하지만 난 당신이 만든있는 PaintEventArgs로 OnPaint(args)
를 호출 할 수 있어야한다고 생각 것, 그것은 당신이 그리는하고자하는 이미지에 대한 그래픽을 포함하고 ClipRectangle는 전체 영역을 포괄 형태.
양식이 페인트 메시지를 올바르게 처리하는 경우 (예 : 창을 완전히 다시 칠할 수있는 충분한 정보를 저장하는 경우) 클라이언트 영역 만 얻을 수 있습니다 (즉, 제목 표시 줄 또는 메뉴).
아마도 가장 우아한 해결책은 아니지만 문자 그대로 응용 프로그램의 인쇄 화면입니다 ... The solution is detailed in this blog post – Dekker500