PrintDialog Classe

Definizione

Richiama una finestra di dialogo per la stampa di Microsoft Windows standard che configura un PrintTicket e una PrintQueue in base all'input dell'utente e quindi stampa un documento.

public ref class PrintDialog
public class PrintDialog
type PrintDialog = class
Public Class PrintDialog
Ereditarietà
PrintDialog

Esempio

Nell'esempio seguente viene illustrato come creare un'istanza di e visualizzare una semplice PrintDialog usando markup e codice XAML (Extensible Application Markup Language).

<Button Width="200" Click="InvokePrint">Invoke PrintDialog</Button>

...

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");
        }
    }
Private Sub InvokePrint(ByVal sender As Object, ByVal e As RoutedEventArgs)
        ' Create the print dialog object and set options
        Dim pDialog As New PrintDialog()
        pDialog.PageRangeSelection = PageRangeSelection.AllPages
        pDialog.UserPageRangeEnabled = True

        ' Display the dialog. This returns true if the user presses the Print button.
        Dim print? As Boolean = pDialog.ShowDialog()
        If print = True Then
            Dim xpsDocument As New XpsDocument("C:\FixedDocumentSequence.xps", FileAccess.ReadWrite)
            Dim fixedDocSeq As FixedDocumentSequence = xpsDocument.GetFixedDocumentSequence()
            pDialog.PrintDocument(fixedDocSeq.DocumentPaginator, "Test print job")
        End If
End Sub

Commenti

Un utente può usare la finestra di dialogo Stampa per selezionare una stampante, configurarla ed eseguire un processo di stampa.

In modo rigoroso, è possibile usare il PrintDocument metodo senza mai aprire la finestra di dialogo. In tal senso, il controllo può essere usato come componente di stampa non visualizzato. Ma per motivi di prestazioni, sarebbe meglio usare il AddJob metodo o uno dei molti Write e WriteAsync metodi di XpsDocumentWriter. Per altre informazioni, vedere Procedura: Stampare file XPS a livello di codice.

Non confondere questa classe, , System.Windows.Controls.PrintDialogcon System.Windows.Forms.PrintDialog. Quest'ultimo viene usato con applicazioni Windows Forms. System.Windows.Controls.PrintDialogviene usato con applicazioni Windows Presentation Foundation.

Costruttori

PrintDialog()

Inizializza una nuova istanza della classe PrintDialog.

Proprietà

CurrentPageEnabled

Ottiene o imposta un valore che indica se l'opzione per stampare la pagina corrente è abilitata.

MaxPage

Ottiene o imposta il più alto numero di pagina consentito negli intervalli delle pagine.

MinPage

Ottiene o imposta il più basso numero di pagina consentito negli intervalli delle pagine.

PageRange

Ottiene o imposta l'intervallo di pagine da stampare quando PageRangeSelection è impostato su UserPages.

PageRangeSelection

Ottiene o imposta PageRangeSelection per questa istanza di PrintDialog.

PrintableAreaHeight

Ottiene l'altezza dell'area stampabile della pagina.

PrintableAreaWidth

Ottiene la larghezza dell'area stampabile della pagina.

PrintQueue

Ottiene o imposta una PrintQueue che rappresenta la stampante selezionata.

PrintTicket

Ottiene o imposta il PrintTicket usato da PrintDialog quando l'utente fa clic su Stampa per il processo di stampa corrente.

SelectedPagesEnabled

Ottiene o imposta un valore che indica se l'opzione per stampare le pagine selezionate è abilitata.

UserPageRangeEnabled

Ottiene o imposta un valore che indica se utenti della finestra di dialogo Stampa hanno la possibilità di specificare intervalli di pagine da stampare.

Metodi

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
PrintDocument(DocumentPaginator, String)

Stampa un oggetto DocumentPaginator della PrintQueue attualmente selezionata.

PrintVisual(Visual, String)

Stampa un oggetto visuale (non testo) derivato dalla classe Visual, alla PrintQueue che è selezionata attualmente.

ShowDialog()

Richiama PrintDialog come finestra di dialogo modale.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a