Ler em inglês

Partilhar via


PrintDocument.QueryPageSettings Evento

Definição

Ocorre imediatamente antes de cada evento PrintPage.

C#
public event System.Drawing.Printing.QueryPageSettingsEventHandler QueryPageSettings;

Tipo de evento

Exemplos

O exemplo de código a seguir imprime um documento com a primeira página em cores, se a impressora der suporte a ele. O exemplo requer que uma PrintDocument variável chamada printDoc tenha sido criada e os PrintPage eventos e QueryPageSettings sejam tratados. A currentPageNumber variável é incrementada depois que cada página é impressa no evento, o PrintPage que não é mostrado.

Use os System.Drawing namespaces e System.Drawing.Printing para este exemplo.

C#

private void MyButtonPrint_OnClick(object sender, System.EventArgs e)
{
    
    // Set the printer name and ensure it is valid. If not, provide a message to the user.
    printDoc.PrinterSettings.PrinterName = "\\mynetworkprinter";

    if (printDoc.PrinterSettings.IsValid) {
    
        // If the printer supports printing in color, then override the printer's default behavior.
        if (printDoc.PrinterSettings.SupportsColor) {

            // Set the page default's to not print in color.
            printDoc.DefaultPageSettings.Color = false;
        }

        // Provide a friendly name, set the page number, and print the document.
        printDoc.DocumentName = "My Presentation";
        currentPageNumber = 1;
        printDoc.Print();
    }
    else {
        MessageBox.Show("Printer is not valid");
    }
}

private void MyPrintQueryPageSettingsEvent(object sender, QueryPageSettingsEventArgs e)
{
    // Determines if the printer supports printing in color.
    if (printDoc.PrinterSettings.SupportsColor) {

        // If the printer supports color printing, use color.
        if (currentPageNumber == 1 ) {

            e.PageSettings.Color = true;
        }
    }    
}

Comentários

É possível imprimir cada página de um documento usando configurações de página diferentes. Defina as configurações de página modificando propriedades individuais da QueryPageSettingsEventArgs.PageSettings propriedade ou definindo a propriedade como um PageSettings. As alterações feitas no PageSettings afetam apenas a página atual, não as configurações de página padrão do documento. O trabalho de impressão também pode ser cancelado definindo a Cancel propriedade true como para o QueryPageSettingsEventArgs.

Para associar o evento ao manipulador de eventos, adicione uma instância do QueryPageSettingsEventHandler delegado ao evento. O manipulador de eventos é chamado sempre que o evento ocorre. Para obter mais informações sobre como lidar com eventos com delegados, consulte Manipulando e gerando eventos.

Se você usar o QueryPageSettings evento para modificar as configurações da impressora, o PrintPreviewDialog desempenho do controle não melhorará mesmo se uma opção de configuração de otimização estiver definida. Para obter mais informações, consulte Visão geral do controle PrintPreviewDialog.

Aplica-se a

Produto Versões
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

Confira também