這裏返回黑色圖像我的第一篇所以這裏去,DrawToBitmap從用戶控件
我有大約30控件(標籤,文本框等),一個用戶控件。 現在我想對它做一個「截圖」。 所以我使用UserControl的「DrawToBitmap」方法。
這裏是一些samplecode
//this is the UserControl with the about 30 controls
var sampleusercontrol = new SampleUserControl();
var bmp = new Bitmap(sampleusercontrol.Width, sampleusercontrol.Height);
sampleusercontrol.DrawToBitmap(bmp, sampleusercontrol.Bounds);
如果我運行這段代碼,它返回了我黑色的圖像所有的時間。 我不知道爲什麼。請幫忙!
編輯:
忘了說,用戶控件是一個WinForms用戶控件
我有同樣的問題。對我來說,解決方案是在創建位圖之前執行sampleusercontrol.Arrange(0,0,sampleusercontrol.Width,sampleusercontrol.height)。我不知道爲什麼這個工作,但它確實... – Ralt
['DrawToBitmap'](http://referencesource.microsoft.com/#System.Windows.Forms/winforms/Managed/System/WinForms/Control.cs, 4441da5479e7a6f8)只需發送'WM_PRINT'消息。 'Arrange'是wpf函數,爲什麼不[以正確的方式](http://stackoverflow.com/a/24478299/1997232)? – Sinatr
對不起,我忘了說,我正在討論的usercontrol,是一個winforms usercontrol –