Re: Подскажите как распечатать содержимое формы с контролами
От: koodeer  
Дата: 24.12.11 19:07
Оценка:
Здравствуйте, Аноним, Вы писали:

А>привет

А>Подскажите как распечатать содержимое формы с контролами
А>тоесть есть форма — на ней несколько кнопок — датагрдвью — нужно получить это все на бумаге
А>спасибо

У контролов есть метод DrawToBitmap. С его помощью можно отрисовать всё содержимое формы в битмап, а уже его печатать.
Что-то вроде:
int h = SystemInformation.CaptionHeight + SystemInformation.VerticalResizeBorderThickness;
int w = SystemInformation.HorizontalResizeBorderThickness;

Rectangle rect = new Rectangle(0, 0, this.Width, this.Height);
Bitmap bmp = new Bitmap(rect.Width, rect.Height);
this.DrawToBitmap(bmp, rect);

foreach (Control c in this.Controls)
{
    rect = c.DisplayRectangle;
    rect.Offset(c.Left + w, c.Top + h);
    c.DrawToBitmap(bmp, rect);
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.