Partager via


PrintTaskRequest Classe

Définition

Contient la demande du système de création d’une tâche d’impression. Cet objet est disponible à partir de l’objet PrintTaskRequestedEventArgs passé à l’événement 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
Héritage
Object Platform::Object IInspectable PrintTaskRequest
Attributs

Configuration requise pour Windows

Famille d’appareils
Windows 10 (introduit dans 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v1.0)

Remarques

La classe PrintTaskRequest est utilisée par une application pour créer un objet PrintTask . Un objet PrintTask est créé en réponse à l’événement PrintTaskRequested et indique au système que l’application a du contenu à imprimer. Lors de la création d’un objet PrintTask à l’aide de la méthode CreatePrintTask , l’application doit fournir un nom pour le gestionnaire d’événements PrintTask et un gestionnaire d’événements PrintTaskSourceRequestedHandler qui est appelé lorsque le contenu à imprimer est requis.

Une application doit effectuer le minimum de travail possible dans le gestionnaire d’événements PrintTaskRequested , car seule une courte durée est fournie pour une réponse. Dans la mesure du possible, l’application doit simplement créer un PrintTask et retarder l’initialisation du contenu jusqu’à ce que le gestionnaire d’événements PrintTaskSourceRequestedHandler soit appelé.

Si une application doit effectuer une opération asynchrone pendant le gestionnaire PrintTaskRequested , elle doit récupérer et utiliser un objet PrintTaskRequestedDeferral . Avant la sortie du gestionnaire d’événements, et généralement avant le démarrage de l’opération asynchrone, l’application doit récupérer l’objet PrintTaskRequestedDeferral en appelant la méthode GetDeferral de l’objet PrintTaskRequest. Une fois l’opération asynchrone terminée, l’application doit appeler la méthode Complete de l’objet PrintTaskRequestedDeferral pour signaler que la demande de tâche d’impression est terminée. L’appel à la méthode Complete doit avoir lieu avant que l’échéance soit atteinte pour que la demande soit acceptée.

La méthode CreatePrintTask dans PrintTaskRequest peut être utilisée pour créer la tâche d’impression. Voici un extrait de code de l’exemple d’impression UWP qui montre la création d’une tâche d’impression :

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);
    });
}

Pour plus d’informations sur ce scénario d’impression et d’autres, consultez Impression et l’exemple d’impression UWP.

Propriétés

Deadline

Obtient une valeur DateTime qui indique la durée de réponse d’une application à l’événement PrintTaskRequested . Si le système n’a pas reçu de réponse du gestionnaire d’événements PrintTaskRequested au moment où l’échéance est atteinte, la tâche d’impression est ignorée.

Méthodes

CreatePrintTask(String, PrintTaskSourceRequestedHandler)

Crée un printTask qui indique que l’application a du contenu à imprimer.

GetDeferral()

Récupère l’objet de report associé à PrintTaskRequest. L’objet de report est utilisé pour gérer les appels asynchrones dans le gestionnaire d’événements PrintTaskRequested .

S’applique à

Voir aussi