Как получить растровое изображение из окрашенной панели в C # - PullRequest
3 голосов
/ 18 декабря 2011

У меня есть панель, и я использую ее Графика gr = panel1.CreateGraphics () для рисования линий и прочего. Мне нужно получить пиксельный цвет точки щелчка мыши, поэтому я решил использовать метод BitPixel для GetPixel. Я создаю растровое изображение таким образом:

Bitmap b = new Bitmap(width, height);            
panel1.DrawToBitmap(b, new Rectangle(0, 0, width, height));
b.Save("D:/aaa.bmp");

но я получаю только белый прямоугольник, даже если я что-то нарисовал. В чем проблема?

1 Ответ

2 голосов
/ 18 декабря 2011

Только вещи, нарисованные в событии Paint, будут обработаны DrawToBitmap. Вместо явного вызова panel1.CreateGraphics() обработайте событие Paint на панели и выполните рисование, используя e.Graphics.

...