Export (0) Print
Expand All

PrintPreviewControl Class

Represents the raw "preview" part of print previewing, without any dialog boxes or buttons. Most PrintPreviewControl objects are found on PrintPreviewDialog objects, but they do not have to be.

For a list of all members of this type, see PrintPreviewControl Members.

System.Object
   System.MarshalByRefObject
      System.ComponentModel.Component
         System.Windows.Forms.Control
            System.Windows.Forms.PrintPreviewControl

[Visual Basic]
Public Class PrintPreviewControl
   Inherits Control
[C#]
public class PrintPreviewControl : Control
[C++]
public __gc class PrintPreviewControl : public Control
[JScript]
public class PrintPreviewControl extends Control

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Remarks

When you create an instance of the PrintPreviewControl class, some of the read/write properties are set to initial values. For a list of these values, see the PrintPreviewControl contructor.

Example

[Visual Basic, C#] The following code example demonstrates the PrintPreviewControl class. To run this example place the following code in a form and call the InitializePrintPreviewControl method from the forms constructor or Load method.

[Visual Basic] 


    'Declare the PrintPreviewControl object and the PrintDocument object.
    Friend WithEvents PrintPreviewControl1 As PrintPreviewControl
    Private WithEvents docToPrint As New Printing.PrintDocument

    Private Sub InitializePrintPreviewControl()

        ' Construct the PrintPreviewControl.
        Me.PrintPreviewControl1 = New PrintPreviewControl

        ' Set location, name, and dock style for PrintPreviewControl1.
        Me.PrintPreviewControl1.Location = New Point(88, 80)
        Me.PrintPreviewControl1.Name = "PrintPreviewControl1"
        Me.PrintPreviewControl1.Dock = DockStyle.Fill

        ' Set the Document property to the PrintDocument 
        ' for which the PrintPage event has been handled.
        Me.PrintPreviewControl1.Document = docToPrint

        ' Set the zoom to 25 percent.
        Me.PrintPreviewControl1.Zoom = 0.25

        ' Set the document name. This will show be displayed when 
        ' the document is loading into the control.
        Me.PrintPreviewControl1.Document.DocumentName = "c:\someFile"

        ' Set the UseAntiAlias property to true so fonts are smoothed
        ' by the operating system.
        Me.PrintPreviewControl1.UseAntiAlias = True

        ' Add the control to the form.
        Me.Controls.Add(Me.PrintPreviewControl1)
    End Sub

    ' The PrintPreviewControl will display the document
    ' by handling the documents PrintPage event
    Private Sub docToPrint_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 document in the control.
        Dim text As String = "In docToPrint_PrintPage method."
        Dim printFont As New Font _
            ("Arial", 35, System.Drawing.FontStyle.Regular)

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

[C#] 

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

    private void InitializePrintPreviewControl()
    {

        // Construct the PrintPreviewControl.
        this.PrintPreviewControl1 = new PrintPreviewControl();

        // Set location, name, and dock style for PrintPreviewControl1.
        this.PrintPreviewControl1.Location = new Point(88, 80);
        this.PrintPreviewControl1.Name = "PrintPreviewControl1";
        this.PrintPreviewControl1.Dock = DockStyle.Fill;

        // Set the Document property to the PrintDocument 
        // for which the PrintPage event has been handled.
        this.PrintPreviewControl1.Document = docToPrint;

        // Set the zoom to 25 percent.
        this.PrintPreviewControl1.Zoom = 0.25;

        // Set the document name. This will show be displayed when 
        // the document is loading into the control.
        this.PrintPreviewControl1.Document.DocumentName = "c:\\someFile";

        // Set the UseAntiAlias property to true so fonts are smoothed
        // by the operating system.
        this.PrintPreviewControl1.UseAntiAlias = true;

        // Add the control to the form.
        this.Controls.Add(this.PrintPreviewControl1);
        
        // Associate the event-handling method with the
        // document's PrintPage event.
        this.docToPrint.PrintPage += 
            new System.Drawing.Printing.PrintPageEventHandler(
            docToPrint_PrintPage);
    }

    // The PrintPreviewControl will display the document
    // by handling the documents PrintPage event
    private void docToPrint_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 document in the control.
        string text = "In docToPrint_PrintPage method.";
        System.Drawing.Font printFont = 
            new Font("Arial", 35, FontStyle.Regular);

        e.Graphics.DrawString(text, printFont,
            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

Namespace: System.Windows.Forms

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

Assembly: System.Windows.Forms (in System.Windows.Forms.dll)

See Also

PrintPreviewControl Members | System.Windows.Forms Namespace | PrintPreviewDialog

Show:
© 2014 Microsoft