Markieren Sie das Kontrollkästchen Englisch, um die englische Version dieses Artikels anzuzeigen. Sie können den englischen Text auch in einem Popup-Fenster einblenden, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Gewusst wie: Aufrufen eines Druckdialogfelds

 

Veröffentlicht: Juni 2016

Um die Möglichkeit bereitzustellen, aus der Anwendung zu drucken, erstellen Sie einfach ein PrintDialog-Objekt und öffnen es.

Beispiel

Das PrintDialog-Steuerelement stellt einen einzelnen Einstiegspunkt für UI, Konfiguration und XPS-Auftragsübermittlung bereit. Das Steuerelement ist einfach zu verwenden und kann mithilfe von Extensible Application Markup Language (XAML)-Markup oder Code instanziiert werden. Im folgenden Beispiel wird veranschaulicht, wie das Steuerelement in Code instanziiert und geöffnet und wie daraus gedruckt wird. Des Weiteren wird gezeigt, wie sichergestellt wird, dass das Dialogfeld die Option enthält, mit der der Benutzer einen bestimmten Seitenbereich festlegen kann. Im Beispielcode wird davon ausgegangen, dass eine FixedDocumentSequence.xps-Datei im Stamm von Laufwerk C: vorhanden ist.

private void InvokePrint(object sender, RoutedEventArgs e)
    {
        // Create the print dialog object and set options
        PrintDialog pDialog = new PrintDialog();
        pDialog.PageRangeSelection = PageRangeSelection.AllPages;
        pDialog.UserPageRangeEnabled = true;

        // Display the dialog. This returns true if the user presses the Print button.
        Nullable<Boolean> print = pDialog.ShowDialog();
        if (print == true)
        {
            XpsDocument xpsDocument = new XpsDocument("C:\\FixedDocumentSequence.xps", FileAccess.ReadWrite);
            FixedDocumentSequence fixedDocSeq = xpsDocument.GetFixedDocumentSequence();
            pDialog.PrintDocument(fixedDocSeq.DocumentPaginator, "Test print job");
        }
    }

Wenn das Dialogfeld geöffnet ist, können Benutzer einen der auf ihren Computern installierten Drucker auswählen. Außerdem haben sie die Möglichkeit, den Microsoft XPS-Dokument-Generator auszuwählen, um eine XML Paper Specification (XPS)-Datei zu erstellen statt zu drucken.

System_CAPS_noteHinweis

Das System.Windows.Controls.PrintDialog-Steuerelement von WPF, das in diesem Thema beschrieben wird, darf nicht mit der System.Windows.Forms.PrintDialog-Komponente von Windows Forms verwechselt werden.

Genau genommen können Sie die PrintDocument-Methode verwenden, ohne je das Dialogfeld zu öffnen. Auf diese Weise kann das Steuerelement als unsichtbare Druckkomponente verwendet werden. Aus Leistungsgründen sollten Sie stattdessen die AddJob-Methode oder eine der vielen Write-Methoden und WriteAsync-Methoden von XpsDocumentWriter verwenden. Weitere Informationen hierzu finden Sie unter Gewusst wie: Programmgesteuertes Drucken von XPS-Dateien.

Anzeigen: