Поделиться через


Практическое руководство: Создание стандартных заданий печати Windows Forms

Основой печати в Windows Forms является компонент PrintDocument, в частности, событие PrintPage. Написав код для обработки события PrintPage, можно указать, что нужно печатать и как печатать.

Создание задания печати

  1. Добавьте компонент PrintDocument на вашу форму.

  2. Написание кода для обработки события PrintPage.

    Вам придется закодировать собственную логику печати. Кроме того, необходимо указать материал для печати.

    В следующем примере кода для печати в качестве материала в обработчике событий PrintPage создается образец графики в виде красного прямоугольника.

    Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage  
       e.Graphics.FillRectangle(Brushes.Red, New Rectangle(500, 500, 500, 500))  
    End Sub  
    
    private void printDocument1_PrintPage(object sender,
    System.Drawing.Printing.PrintPageEventArgs e)  
    {  
       e.Graphics.FillRectangle(Brushes.Red,
         new Rectangle(500, 500, 500, 500));  
    }  
    
    private:  
       void printDocument1_PrintPage(System::Object ^ sender,  
          System::Drawing::Printing::PrintPageEventArgs ^ e)  
       {  
          e->Graphics->FillRectangle(Brushes::Red,  
             Rectangle(500, 500, 500, 500));  
       }  
    

    (Visual C# и Visual C++) Поместите следующий код в конструктор формы, чтобы зарегистрировать обработчик событий.

    this.printDocument1.PrintPage += new  
       System.Drawing.Printing.PrintPageEventHandler  
       (this.printDocument1_PrintPage);  
    
    printDocument1->PrintPage += gcnew  
       System::Drawing::Printing::PrintPageEventHandler  
       (this, &Form1::printDocument1_PrintPage);  
    

    Также может потребоваться написать код для событий BeginPrint и EndPrint, например целое число, представляющее общее количество страниц для печати, которое уменьшается по мере печати каждой страницы.

    Заметка

    Вы можете добавить компонент PrintDialog в форму, чтобы предоставить пользователям чистый и эффективный пользовательский интерфейс. Задание свойства Document компонента PrintDialog позволяет задать свойства, связанные с печатаемым документом, над которым вы работаете в своей форме. Дополнительные сведения о компоненте PrintDialog см. в компоненте PrintDialog.

    Дополнительные сведения о конкретных заданиях печати Windows Forms, включая создание задания печати программным способом, см. в PrintPageEventArgs.

См. также