PrintDialog 类

定义

调用标准的 Microsoft Windows 打印对话框,此对话框可根据用户输入配置 PrintTicketPrintQueue,然后打印文档。

public ref class PrintDialog
public class PrintDialog
type PrintDialog = class
Public Class PrintDialog
继承
PrintDialog

示例

以下示例演示如何使用可扩展应用程序标记语言 (XAML) 标记和代码创建 和 显示 的 PrintDialog 实例。

<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 == true)
        {
            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

注解

用户可以使用“ 打印 ”对话框来选择打印机、对其进行配置和执行打印作业。

严格地说,可在没有打开对话框的情况下使用 PrintDocument 方法。 从这个意义上说,该控件可用作不可见的打印组件。 但是出于性能原因,最好使用 AddJob 方法或 XpsDocumentWriterWriteWriteAsync 方法之一。 有关此内容的详细信息,请参阅 如何:以编程方式打印 XPS 文件

不要将此类 System.Windows.Controls.PrintDialogSystem.Windows.Forms.PrintDialog混淆。 后者用于Windows 窗体应用程序。 System.Windows.Controls.PrintDialog与 Windows Presentation Foundation 应用程序一起使用。

构造函数

PrintDialog()

初始化 PrintDialog 类的新实例。

属性

CurrentPageEnabled

获取或设置一个值,该指示打印当前页的选项是否可用。

MaxPage

获取或设置页范围内允许的最大页码。

MinPage

获取或设置页范围内允许的最小页码。

PageRange

获取或设置在 PageRangeSelection 设置为 UserPages 时要打印的页范围。

PageRangeSelection

获取或设置此 PageRangeSelection 实例的 PrintDialog

PrintableAreaHeight

获取页面的可打印区域的高度。

PrintableAreaWidth

获取页面的可打印区域的宽度。

PrintQueue

获取或设置一个表示选定的打印机的 PrintQueue

PrintTicket

获取或设置当用户针对当前打印作业单击“打印”时 PrintDialog 使用的 PrintTicket

SelectedPagesEnabled

获取或设置指示是否启用打印所选页的选项的值。

UserPageRangeEnabled

获取或设置一个值,该值指示“打印”对话框的用户是否可以使用一个选项指定要打印的页范围

方法

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
PrintDocument(DocumentPaginator, String)

DocumentPaginator 对象打印到当前选定的 PrintQueue

PrintVisual(Visual, String)

将派生自 Visual 类的可见(非文本)对象打印到当前选定的 PrintQueue

ShowDialog()

调用 PrintDialog 为模式对话框。

ToString()

返回表示当前对象的字符串。

(继承自 Object)

适用于