1

我有一个 Windows 窗体应用程序。

表单很大并且有滚动条来查看它的全部内容。

我需要拍摄整个表格的屏幕截图(包括由于表格高度而在屏幕之外的区域)。

我尝试了以下代码,但它只捕获了屏幕上可见的表单部分:

ScreenCapture sc = new ScreenCapture();
// capture entire screen, and save it to a file
Image img = sc.CaptureScreen();
// display image in a Picture control named imageDisplay
this.imageDisplay.Image = img;
// capture this window, and save it
sc.CaptureWindowToFile(this.Handle,"C:\\temp2.gif",ImageFormat.Gif);

我无法截取整个表格的屏幕截图。

任何人都可以让我知道捕获整个表单的方法,包括由于滚动而隐藏的区域吗?

4

2 回答 2

0

您是否尝试使用Control.DrawToBitmap您可以在表单以及表单中的特定控件上使用它。

于 2014-03-03T09:12:59.757 回答
0

考虑将屏幕绘制为位图:http: //msdn.microsoft.com/en-us/library/system.windows.forms.control.drawtobitmap.aspx

但是有一些限制,最大尺寸可能会受到限制,并且无法绘制富文本框。

于 2014-03-03T09:10:43.220 回答