Condividi tramite


PrintTaskRequest Classe

Definizione

Contiene la richiesta dal sistema per creare un'attività di stampa. Questo oggetto è disponibile dall'oggetto PrintTaskRequestedEventArgs passato all'evento PrintTaskRequested .

public ref class PrintTaskRequest sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class PrintTaskRequest final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class PrintTaskRequest
Public NotInheritable Class PrintTaskRequest
Ereditarietà
Object Platform::Object IInspectable PrintTaskRequest
Attributi

Requisiti Windows

Famiglia di dispositivi
Windows 10 (è stato introdotto in 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
API contract
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)

Commenti

La classe PrintTaskRequest viene usata da un'app per creare un nuovo oggetto PrintTask . Un oggetto PrintTask viene creato in risposta all'evento PrintTaskRequested e indica al sistema che l'app dispone di contenuto da stampare. Quando si crea un oggetto PrintTask usando il metodo CreatePrintTask , l'app deve specificare un nome per PrintTask e un gestore eventi PrintTaskSourceRequestedHandler che viene chiamato quando è necessario stampare il contenuto.

Un'app deve eseguire la quantità minima di lavoro possibile nel gestore eventi PrintTaskRequested perché viene fornita solo una breve quantità di tempo per una risposta. Laddove possibile, l'app deve semplicemente creare un oggetto PrintTask e ritardare l'inizializzazione del contenuto fino a quando non viene chiamato il gestore eventi PrintTaskSourceRequestedHandler .

Se un'app deve eseguire un'operazione asincrona durante il gestore PrintTaskRequested , deve recuperare e usare un oggetto PrintTaskRequestedDeferral . Prima dell'uscita del gestore eventi e in genere prima dell'avvio dell'operazione asincrona, l'app deve recuperare l'oggetto PrintTaskRequestedDeferral chiamando il metodo GetDeferral dell'oggetto PrintTaskRequest. Al termine dell'operazione asincrona, l'app deve chiamare il metodo Complete dell'oggetto PrintTaskRequestedDeferral per segnalare che la richiesta di attività di stampa è stata completata. La chiamata al metodo Complete deve essere eseguita prima che venga raggiunta la scadenza affinché la richiesta venga accettata.

Il metodo CreatePrintTask in PrintTaskRequest può essere usato per creare l'attività di stampa. Ecco un frammento di codice dell'esempio di stampa UWP che mostra la creazione di un'attività di stampa:

protected virtual void PrintTaskRequested(PrintManager sender, PrintTaskRequestedEventArgs e)
{
    PrintTask printTask = null;
    printTask = e.Request.CreatePrintTask("C# Printing SDK Sample", sourceRequested =>
    {
        // Print Task event handler is invoked when the print job is completed.
        printTask.Completed += async (s, args) =>
        {
            // Notify the user when the print operation fails.
            if (args.Completion == PrintTaskCompletion.Failed)
            {
                await scenarioPage.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
                {
                    MainPage.Current.NotifyUser("Failed to print.", NotifyType.ErrorMessage);
                });
            }
        };

        sourceRequested.SetSource(printDocumentSource);
    });
}

Per altre informazioni su questo e altri scenari di stampa, vedi Stampa e esempio di stampa UWP.

Proprietà

Deadline

Ottiene un valore DateTime che indica per quanto tempo un'app deve rispondere all'evento PrintTaskRequested . Se il sistema non ha ricevuto una risposta dal gestore eventi PrintTaskRequested entro il raggiungimento della scadenza, l'attività di stampa viene ignorata.

Metodi

CreatePrintTask(String, PrintTaskSourceRequestedHandler)

Crea un nuovo PrintTask che indica che l'app dispone di contenuto da stampare.

GetDeferral()

Recupera l'oggetto rinvio associato a PrintTaskRequest. L'oggetto rinvio viene utilizzato per gestire le chiamate asincrone nel gestore eventi PrintTaskRequested .

Si applica a

Vedi anche