2010-09-10 70 views

回答

3

即使在VisualStudio中對Intellisense隱藏,也可以使用Control.DrawToBitmap()。 WebBrowser仍繼承於基類Control,所以此方法確實存在。但是我做的是創建一個帶有MenuItem的MenuStrip,我用它來測試它(這基本上只是一個標準的點擊事件),而是創建了一個圖形對象,並使用正確的座標複製了屏幕的一部分。唯一需要調整的事情是WebBrowser控件的名稱和實際保存圖像的行。

private void copyToolStripMenuItem_Click(object sender, EventArgs e) { 
    int width, height; 
    width = webBrowser1.ClientRectangle.Width; 
    height = webBrowser1.ClientRectangle.Height; 
    using (Bitmap image = new Bitmap(width, height)) { 
     using (Graphics graphics = Graphics.FromImage(image)) { 
      Point p, upperLeftSource, upperLeftDestination; 
      p      = new Point(0, 0); 
      upperLeftSource   = webBrowser1.PointToScreen(p); 
      upperLeftDestination = new Point(0, 0); 
      Size blockRegionSize = webBrowser1.ClientRectangle.Size; 
      graphics.CopyFromScreen(upperLeftSource, upperLeftDestination, blockRegionSize); 
     } 
     image.Save("C:\\Test.bmp"); 
    } 
} 
+0

這正是我所需要的......謝謝 – Muse 2010-09-10 07:03:23

+0

工作就像一個魅力。謝謝! – molbalga 2016-11-08 09:50:16