DrawToBitmap возвращает черное изображение из UserControl
Мой первый пост здесь, так что здесь идет,
У меня есть UserControl с около 30 элементов управления (ярлыки, текстовые поля и т. д.). Теперь я хотел бы сделать "скриншот". Поэтому я использовал метод DrawToBitmap из UserControl.
Вот пример кода
//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);
если я запускаю этот код, он все время возвращает мне черное изображение. Понятия не имею почему. Пожалуйста помоги!
Редактировать:
Забыл сказать, что UserControl - это WinForms UserControl
3 ответа
Это работало для меня годами, пока на прошлой неделе в производстве не появилось черное изображение. Интересно, что это было сразу после того, как мы применили новый патч для Windows. Мне удалось найти это сообщение о проблеме:
Вы не упомянули, как создавался этот элемент управления winforms, но в первом случае это было из приложения winforms, запущенного сервисом. На сайте Telerik также есть случай, когда IIS создал элемент управления на стороне сервера для создания файла PDF:
http://www.telerik.com/forums/export-to-pdf-597e04c01b39
Попробуйте проверить исправление KB3057839 и откатить его на короткое время. Надеемся, что Microsoft ответит исправлением или обходным решением.
Я была такая же проблема. Последний раунд исправлений MS исправил проблему.
Убедитесь, что элемент управления был загружен.
Я боролся с этим, но оказалось, что элемент управления находится в другой вкладке и не будет отображаться правильно, пока я не нажму на вкладку, а затем запустите DrawToBitmap
,