Idioma: HTML | XAML

Como alterar opções padrão na Interface do Usuário para visualização de impressão (XAML)

Applies to Windows only

Este tutorial mostra como personalizar as opções de impressão na Interface do Usuário para visualização de impressão.

Por padrão, a Interface do Usuário para visualização de impressão mostra as seguintes opções:

ColorMode Copies Orientation

 

Além das configurações anteriores, o Windows fornece várias outras opções de impressora comuns que você pode adicionar à Interface do Usuário para visualização de impressão. Veja a seguir essas outras opções comuns.

Binding Collation Duplex HolePunch
InputBin MediaSize MediaType NUp
PrintQuality Staple   

 

Essas opções são definidas na classe StandardPrintTaskOptions. Você pode adicionar ou remover opções na lista de opções exibida na interface do usuário para visualização de impressão. Também pode mudar a ordem de exibição dessas opções e definir as configurações padrão que são apresentadas para o usuário.

No entanto, as modificações feitas com o uso desse método só afetam a interface do usuário para visualização de impressão. O usuário sempre pode acessar todas as opções com suporte na impressora tocando em Mais configurações na interface do usuário para visualização de impressão.

Embora o seu aplicativo possa especificar qualquer opção de impressão para exibição, apenas aquelas com suporte na impressora selecionada serão apresentadas na interface do usuário para visualização de impressão. A interface do usuário para impressão não mostrará nenhuma opção para a qual não haja suporte na impressora selecionada.

Objetivo: Personalize as opções de impressão mostradas na Interface do Usuário para visualização de impressão.

Pré-requisitos

  • Você deve conhecer a linguagem C#, C++ ou Visual Basic, XAML, eventos e manipulação de eventos.
  • É necessário ter o Microsoft Visual Studio instalado.
  • Ter uma impressora instalada.
  • Você precisa ter um aplicativo da Windows Store em C++, C# ou Visual Basic para alterar as opções de impressão. Se você não tem o seu próprio aplicativo, pode baixar e usar o aplicativo de amostra PrintSample.
  • Seu aplicativo já deve dar suporte à impressão básica do Windows. Se você não tem esse aplicativo, confira o Guia de início rápido: imprimindo a partir do seu aplicativo para saber como adicionar o suporte para impressão básica do Windows ao seu aplicativo.

Instruções

1. Abrir o aplicativo no Visual Studio

O procedimento descrito neste tutorial refere-se ao aplicativo PrintSample do aplicativo de amostra PrintSample. Se você estiver adicionando um botão de impressão para o seu próprio aplicativo, abra esse aplicativo no Visual Studio em vez do aplicativo de amostra PrintSample.

  1. Abra a amostra de impressão para aplicativos da Windows Store e baixe o exemplo para C# no seu computador.
  2. No Visual Studio, clique em File > Open Project e vá para a pasta que contém o arquivo de solução do aplicativo de amostra que você baixou na etapa anterior.
  3. Selecione o arquivo de solução PrintSample e clique em Abrir.

2. Compilar e testar o aplicativo

  1. Clique em Compilar > Compilar Solução para compilar o aplicativo no qual você está trabalhando. Verifique se não há mensagens de erro no painel Saída localizado na parte inferior da tela.
  2. Clique em Depurar > Iniciar sem Depuração.
  3. Verifique se, depois de alguns segundos, a tela exibe o aplicativo Amostra de Impressão JS.
  4. Se o aplicativo for executado sem erros, retorne ao Visual Studio e clique em Depurar > Parar Depuração.

3. Definir as opções de impressão para exibição

Quando a tela do aplicativo estiver carregada, ela se registrará para o contrato de Impressão. Parte desse registro inclui definir o manipulador de eventos PrintTaskRequested. O código para personalizar as opções exibidas na interface de usuário para visualização da impressão é adicionado ao manipulador de eventos PrintTaskRequested.

Modifique o manipulador de eventos PrintTaskRequested de forma a incluir as instruções printTask.options que definem as configurações de impressão que você quer exibir na interface de usuário para visualização da impressão.

  1. Para a tela do seu aplicativo na qual você quer mostrar uma lista personalizada de opções de impressão, substitua o manipulador de eventos PrintTaskRequested na classe base de forma a incluir um código que especifique as opções a serem exibidas quando a tela for impressa.

    Observação  Esse exemplo é obtido de ScenarioInput3.xaml.cs do aplicativo de amostra PrintSample. Se você estiver adicionando esse código ao seu aplicativo, atribua as opções de impressão que você quer exibir para o usuário na interface de usuário para visualização da impressão.

    Importante  Chamar displayedOptions.clear() remove todas as opções de impressão da interface de usuário para visualização de impressão, incluindo o link Mais configurações. Não deixe de acrescentar as opções que você quer mostrar na interface de usuário para visualização de impressão.

    
    protected override void PrintTaskRequested(PrintManager sender, PrintTaskRequestedEventArgs e)
    {
        PrintTask printTask = null;
        printTask = e.Request.CreatePrintTask("C# Printing SDK Sample", 
                                              sourceRequestedArgs =>
                                              {
                                                  IList<string> displayedOptions = printTask.Options.DisplayedOptions;
    
                                                  // Choose the printer options to be shown.
                                                  // The order in which the options are appended determines the order in which they appear in the UI
                                                  displayedOptions.Clear();
                                                  displayedOptions.Add(Windows.Graphics.Printing.StandardPrintTaskOptions.Copies);
                                                  displayedOptions.Add(Windows.Graphics.Printing.StandardPrintTaskOptions.Orientation);
                                                  displayedOptions.Add(Windows.Graphics.Printing.StandardPrintTaskOptions.MediaSize);
                                                  displayedOptions.Add(Windows.Graphics.Printing.StandardPrintTaskOptions.Collation);
                                                  displayedOptions.Add(Windows.Graphics.Printing.StandardPrintTaskOptions.Duplex);
    
                                                  // Preset the default value of the printer option
                                                  printTask.Options.MediaSize = PrintMediaSize.NorthAmericaLegal;
                                                  
                                                  // 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 Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
                                                          {
                                                              rootPage.NotifyUser("Failed to print.", NotifyType.ErrorMessage);
                                                          });
                                                      }
                                                  };
    
                                                  sourceRequestedArgs.SetSource(printDocumentSource);
                                              });
    }
    
    
    
  2. Você também pode definir os valores padrão das opções na interface de usuário para visualização de impressão. A linha de código a seguir, obtida do exemplo de código anterior, define o valor padrão da opção MediaSize.

    
    // Preset the default value of the printer option
    printTask.Options.MediaSize = PrintMediaSize.NorthAmericaLegal;
    
    
    

Resumo e próximas etapas

Para ver o código-fonte completo para este e outros cenários de impressão em aplicativos da Windows Store, confira o aplicativo de amostra PrintSample.

Tópicos relacionados

Impressão

 

 

Mostrar:
© 2014 Microsoft