Compartilhar via


PrintTaskRequest Classe

Definição

Contém a solicitação do sistema para criar uma tarefa de impressão. Esse objeto está disponível no objeto PrintTaskRequestedEventArgs passado para o 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
Herança
Object Platform::Object IInspectable PrintTaskRequest
Atributos

Requisitos do Windows

Família de dispositivos
Windows 10 (introduzida na 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
API contract
Windows.Foundation.UniversalApiContract (introduzida na v1.0)

Comentários

A classe PrintTaskRequest é usada por um aplicativo para criar um novo objeto PrintTask . Um objeto PrintTask é criado em resposta ao evento PrintTaskRequested e indica ao sistema que o aplicativo tem conteúdo a ser impresso. Ao criar um objeto PrintTask usando o método CreatePrintTask , o aplicativo deve fornecer um nome para o printTask e um manipulador de eventos PrintTaskSourceRequestedHandler que é chamado quando o conteúdo a ser impresso é necessário.

Um aplicativo deve fazer a quantidade mínima de trabalho possível no manipulador de eventos PrintTaskRequested , pois apenas um curto período de tempo é fornecido para uma resposta. Sempre que possível, o aplicativo deve simplesmente criar um PrintTask e atrasar qualquer inicialização de conteúdo até que o manipulador de eventos PrintTaskSourceRequestedHandler seja chamado.

Se um aplicativo precisar executar uma operação assíncrona durante o manipulador PrintTaskRequested , ele deverá recuperar e usar um objeto PrintTaskRequestedDeferral . Antes da saída do manipulador de eventos e, normalmente, antes da operação assíncrona ser iniciada, o aplicativo deve recuperar o objeto PrintTaskRequestedDeferral chamando o método GetDeferral do objeto PrintTaskRequest. Quando a operação assíncrona for concluída, o aplicativo deverá chamar o método Complete do objeto PrintTaskRequestedDeferral para sinalizar que a solicitação de tarefa de impressão está concluída. A chamada para o método Complete deve ocorrer antes que o Prazo seja atingido para que a solicitação seja aceita.

O método CreatePrintTask em PrintTaskRequest pode ser usado para criar a tarefa de impressão. Aqui está um snippet de código do exemplo de impressão UWP que mostra a criação de uma tarefa de impressão:

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

Para obter mais informações sobre esse e outros cenários de impressão, consulte Impressão e o exemplo de impressão UWP.

Propriedades

Deadline

Obtém um valor DateTime que indica quanto tempo um aplicativo tem para responder ao evento PrintTaskRequested . Se o sistema não tiver recebido uma resposta do manipulador de eventos PrintTaskRequested quando o prazo for atingido, a tarefa de impressão será ignorada.

Métodos

CreatePrintTask(String, PrintTaskSourceRequestedHandler)

Cria um novo PrintTask que indica que o aplicativo tem conteúdo a ser impresso.

GetDeferral()

Recupera o objeto de adiamento associado ao PrintTaskRequest. O objeto de adiamento é usado para lidar com chamadas assíncronas no manipulador de eventos PrintTaskRequested .

Aplica-se a

Confira também