PrintDialog Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Invoca uma caixa de diálogo padrão Microsoft Windows print que configura um PrintTicket e PrintQueue de acordo com a entrada do utilizador e depois imprime um documento.
public ref class PrintDialog
public class PrintDialog
type PrintDialog = class
Public Class PrintDialog
- Herança
-
PrintDialog
Exemplos
O exemplo seguinte mostra como criar uma instância e exibir uma simples PrintDialog utilizando marcação e código da Extensible Application Markup Language (XAML).
<Button Width="200" Click="InvokePrint">Invoke PrintDialog</Button>
...
private void InvokePrint(object sender, RoutedEventArgs e)
{
// Create the print dialog object and set options
PrintDialog pDialog = new PrintDialog();
pDialog.PageRangeSelection = PageRangeSelection.AllPages;
pDialog.UserPageRangeEnabled = true;
// Display the dialog. This returns true if the user presses the Print button.
Nullable<Boolean> print = pDialog.ShowDialog();
if (print.Value)
{
XpsDocument xpsDocument = new XpsDocument("C:\\FixedDocumentSequence.xps", FileAccess.ReadWrite);
FixedDocumentSequence fixedDocSeq = xpsDocument.GetFixedDocumentSequence();
pDialog.PrintDocument(fixedDocSeq.DocumentPaginator, "Test print job");
}
}
Private Sub InvokePrint(ByVal sender As Object, ByVal e As RoutedEventArgs)
' Create the print dialog object and set options
Dim pDialog As New PrintDialog()
pDialog.PageRangeSelection = PageRangeSelection.AllPages
pDialog.UserPageRangeEnabled = True
' Display the dialog. This returns true if the user presses the Print button.
Dim print? As Boolean = pDialog.ShowDialog()
If print = True Then
Dim xpsDocument As New XpsDocument("C:\FixedDocumentSequence.xps", FileAccess.ReadWrite)
Dim fixedDocSeq As FixedDocumentSequence = xpsDocument.GetFixedDocumentSequence()
pDialog.PrintDocument(fixedDocSeq.DocumentPaginator, "Test print job")
End If
End Sub
Observações
Um utilizador pode usar a caixa de diálogo Imprimir para selecionar uma impressora, configurá-la e realizar um trabalho de impressão.
Tecnicamente, podes usar o PrintDocument método sem nunca abrires o diálogo. Nesse sentido, o controlo pode ser usado como um componente de impressão invisível. Mas, por razões de desempenho, seria melhor usar o AddJob método ou um dos muitos Write e WriteAsync métodos do XpsDocumentWriter. Para mais informações, veja Como: Imprimir Programáticamente Ficheiros XPS.
Não confundas esta classe, System.Windows.Controls.PrintDialog, com System.Windows.Forms.PrintDialog. Este último é utilizado com aplicações Windows Forms. System.Windows.Controls.PrintDialog é usado com Windows Presentation Foundation aplicações.
Construtores
| Name | Description |
|---|---|
| PrintDialog() |
Inicializa uma nova instância da PrintDialog classe. |
Propriedades
| Name | Description |
|---|---|
| CurrentPageEnabled |
Recebe ou define um valor que indica se a opção de imprimir a página atual está ativada. |
| MaxPage |
Obtém ou define o número de página mais alto permitido nos intervalos de página. |
| MinPage |
Obtém ou define o número de página mais baixo permitido nos intervalos de página. |
| PageRange |
Obtém ou define o intervalo de páginas a imprimir quando PageRangeSelection está definido para UserPages. |
| PageRangeSelection |
Obtém ou define para PageRangeSelection esta instância de PrintDialog. |
| PrintableAreaHeight |
Obtém a altura da área imprimível da página. |
| PrintableAreaWidth |
Obtém a largura da área imprimível da página. |
| PrintQueue |
Obtém ou define a PrintQueue que representa a impressora selecionada. |
| PrintTicket |
Obtém ou define o PrintTicket que é usado quando PrintDialog o utilizador clica em Imprimir para o trabalho de impressão atual. |
| SelectedPagesEnabled |
Recebe ou define um valor que indica se a opção de imprimir as páginas selecionadas está ativada. |
| UserPageRangeEnabled |
Recebe ou define um valor que indica se os utilizadores da caixa de diálogo Imprimir têm a opção de especificar intervalos de páginas a imprimir. |
Métodos
| Name | Description |
|---|---|
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| PrintDocument(DocumentPaginator, String) |
Imprime um DocumentPaginator objeto no PrintQueue que está atualmente selecionado. |
| PrintVisual(Visual, String) |
Imprime um objeto visual (não textual), que é derivado da Visual classe, para o PrintQueue que está atualmente selecionado. |
| ShowDialog() |
Invoca o PrintDialog como uma caixa de diálogo modal. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |