2010-09-27 9 views
6

Qualcuno sa se è possibile sapere se è stato fatto clic sull'annullamento della finestra di dialogo di stampa?Annulla la stampa della finestra di dialogo di stampa in silverlight

Ho visto postale e doc che dicono "EndPrint - evento generato quando la stampa viene completato o annullato."

Ma non credo che sia il dialogo di stampa annullata ... Penso che la è se il lavoro di stampa è annullato.

grazie

+0

Anche io sto avendo problemi con questo. Fondamentalmente se si esce dalla finestra di dialogo di stampa, l'evento EndPrint non viene mai attivato. Puoi vedere gli effetti di questo qui - il codice è scritto per ripulire dopo una EndPrint, ma se annulli invece di stampare effettivamente, la prossima volta che provi, il controllo pensa che stai ancora stampando. http://www.davidpoll.com/Samples/SLaB/#pack://siteoforigin:,,ScratchPrintingProject.xap/ScratchPrintingProject;component/PrintingPage.xaml – pho79

risposta

2

Sulla base della documentazione, non credo ci sia un modo semplice: http://msdn.microsoft.com/en-us/library/system.windows.printing.printdocument.endprint(v=VS.95).aspx

In particolare:

L'evento EndPrint non si verificherà se l'utente annulla l'operazione di stampa dalla finestra di dialogo di stampa. A L'evento BeginPrint si verificherà sempre prima di un evento EndPrint.

Apparentemente l'evento EndPrint è solo da ripulire nel caso in cui il documento sia effettivamente stampato, non nel caso di annullamento della finestra di dialogo di stampa.

0

C'è un modo, se l'evento 'PrintPage' non viene CHIAMATO dopo aver chiamato il metodo 'printDocument.Print()' che significa che il pulsante 'Annulla' è stato premuto dall'utente nella finestra di dialogo di stampa.

spero che sia d'aiuto.

Problemi correlati