Export (0) Print
Expand All

PrintDialog Constructor

Initializes a new instance of the PrintDialog class.

[Visual Basic]
Public Sub New()
[C#]
public PrintDialog();
[C++]
public: PrintDialog();
[JScript]
public function PrintDialog();

Remarks

When you create an instance of PrintDialog, the following read/write properties are set to initial values.

Property Initial Value
AllowSomePages false
AllowPrintToFile true
AllowSelection false
Document A null reference (Nothing in Visual Basic)
PrinterSettings A null reference (Nothing)
PrintToFile false
ShowHelp false
ShowNetwork true

You can change the value for any of these properties through a separate call to the property.

Example

[Visual Basic, C#] The following code example demonstrates the use of the PrintDialog class. To run this example paste the following code in a form containing a PrintDialog control named PrintDialog1 and a button named Button1. This example assumes the Click and PrintPage events have been connected to the event handling methods defined in this example.

[Visual Basic] 

    ' Declare the PrintDocument object.
    Private WithEvents docToPrint As New Printing.PrintDocument

    ' This method will set properties on the PrintDialog object and
    ' then display the dialog.
    Private Sub Button1_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button1.Click

        ' Allow the user to choose the page range he or she would
        ' like to print.
        PrintDialog1.AllowSomePages = True

        ' Show the help button.
        PrintDialog1.ShowHelp = True

        ' Set the Document property to the PrintDocument for 
        ' which the PrintPage Event has been handled. To display the
        ' dialog, either this property or the PrinterSettings property 
        ' must be set 
        PrintDialog1.Document = docToPrint

        Dim result As DialogResult = PrintDialog1.ShowDialog()

        ' If the result is OK then print the document.
        If (result = DialogResult.OK) Then
            docToPrint.Print()
        End If

    End Sub

    ' The PrintDialog will print the document
    ' by handling the document's PrintPage event.
    Private Sub document_PrintPage(ByVal sender As Object, _
       ByVal e As System.Drawing.Printing.PrintPageEventArgs) _
           Handles docToPrint.PrintPage

        ' Insert code to render the page here.
        ' This code will be called when the control is drawn.

        ' The following code will render a simple
        ' message on the printed document.
        Dim text As String = "In document_PrintPage method."
        Dim printFont As New System.Drawing.Font _
            ("Arial", 35, System.Drawing.FontStyle.Regular)

        ' Draw the content.
        e.Graphics.DrawString(text, printFont, _
            System.Drawing.Brushes.Black, 10, 10)
    End Sub

[C#] 

    // Declare the PrintDocument object.
    private System.Drawing.Printing.PrintDocument docToPrint = 
        new System.Drawing.Printing.PrintDocument();

    // This method will set properties on the PrintDialog object and
    // then display the dialog.
    private void Button1_Click(System.Object sender, 
        System.EventArgs e)
    {

        // Allow the user to choose the page range he or she would
        // like to print.
        PrintDialog1.AllowSomePages = true;

        // Show the help button.
        PrintDialog1.ShowHelp = true;

        // Set the Document property to the PrintDocument for 
        // which the PrintPage Event has been handled. To display the
        // dialog, either this property or the PrinterSettings property 
        // must be set 
        PrintDialog1.Document = docToPrint;

        DialogResult result = PrintDialog1.ShowDialog();

        // If the result is OK then print the document.
        if (result==DialogResult.OK)
        {
            docToPrint.Print();
        }

    }

    // The PrintDialog will print the document
    // by handling the document's PrintPage event.
    private void document_PrintPage(object sender, 
        System.Drawing.Printing.PrintPageEventArgs e)
    {

        // Insert code to render the page here.
        // This code will be called when the control is drawn.

        // The following code will render a simple
        // message on the printed document.
        string text = "In document_PrintPage method.";
        System.Drawing.Font printFont = new System.Drawing.Font
            ("Arial", 35, System.Drawing.FontStyle.Regular);

        // Draw the content.
        e.Graphics.DrawString(text, printFont, 
            System.Drawing.Brushes.Black, 10, 10);
    }

[C++, JScript] No example is available for C++ or JScript. To view a Visual Basic or C# example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also

PrintDialog Class | PrintDialog Members | System.Windows.Forms Namespace | PrintDocument | PrinterSettings | CommonDialog

Show:
© 2014 Microsoft