Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

PrintDocument.QueryPageSettings-Ereignis

Tritt unmittelbar vor jedem PrintPage-Ereignis ein.

Namespace:  System.Drawing.Printing
Assembly:  System.Drawing (in System.Drawing.dll)
public event QueryPageSettingsEventHandler QueryPageSettings

Jede Seite eines Dokuments kann mit unterschiedlichen Seiteneinstellungen gedruckt werden. Sie legen Seiteneinstellungen fest, indem Sie einzelne Eigenschaften der QueryPageSettingsEventArgs.PageSettings-Eigenschaft festlegen oder indem Sie die Eigenschaft auf PageSettings festlegen. Änderungen an PageSettings betreffen nur die aktuelle Seite, nicht die Standardseiteneinstellungen des Dokuments. Der Druckauftrag kann auch abgebrochen werden, indem die Cancel-Eigenschaft für QueryPageSettingsEventArgs auf true festgelegt wird.

Fügen Sie dem Ereignis eine Instanz des QueryPageSettingsEventHandler-Delegaten hinzu, um dem Ereignishandler das Ereignis zuzuordnen. Der Ereignishandler wird bei jedem Eintreten des Ereignisses aufgerufen. Weitere Informationen zum Behandeln von Ereignissen mit Delegaten finden Sie unter Ereignisse und Delegaten.

Im folgenden Codebeispiel wird ein Dokument gedruckt, wobei die erste Seite in Farbe gedruckt wird, sofern der Drucker dies unterstützt. Bei diesem Beispiel muss zuvor eine PrintDocument-Variable mit dem Namen printDoc erstellt werden. Außerdem müssen das PrintPage-Ereignis und das QueryPageSettings-Ereignis behandelt werden. Die currentPageNumber-Variable wird nach dem Drucken jeder Seite im PrintPage-Ereignis entsprechend erhöht (hier nicht gezeigt).

Verwenden Sie für dieses Beispiel den System.Drawing-Namespace und den System.Drawing.Printing-Namespace.



private void MyButtonPrint_OnClick(object sender, System.EventArgs e)
{

    // Set the printer name and ensure it is valid. If not, provide a message to the user.
    printDoc.PrinterSettings.PrinterName = "\\mynetworkprinter";

    if (printDoc.PrinterSettings.IsValid) {

        // If the printer supports printing in color, then override the printer's default behavior.
        if (printDoc.PrinterSettings.SupportsColor) {

            // Set the page default's to not print in color.
            printDoc.DefaultPageSettings.Color = false;
        }

        // Provide a friendly name, set the page number, and print the document.
        printDoc.DocumentName = "My Presentation";
        currentPageNumber = 1;
        printDoc.Print();
    }
    else {
        MessageBox.Show("Printer is not valid");
    }
}

private void MyPrintQueryPageSettingsEvent(object sender, QueryPageSettingsEventArgs e)
{
    // Determines if the printer supports printing in color.
    if (printDoc.PrinterSettings.SupportsColor) {

        // If the printer supports color printing, use color.
        if (currentPageNumber == 1 ) {

            e.PageSettings.Color = true;
        }

    }    
}


.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)

Community-Beiträge

HINZUFÜGEN
© 2013 Microsoft. Alle Rechte vorbehalten.