Windows 窗体 PrintPreviewDialog 控件是一个预配置对话框,用于显示 PrintDocument 的打印效果。 在基于 Windows 的应用程序中将其用作简单解决方案,而不是配置自己的对话框。 该控件包含用于打印、放大、显示一页或多页以及关闭对话框的按钮。
主要属性和方法
控件的键属性 Document,用于设置要预览的文档。 文档必须是 PrintDocument 对象。 若要显示对话框,必须调用其 ShowDialog 方法。 抗锯齿可以使文本看起来更流畅,但它也可以使显示速度变慢:若要使用它,请将 UseAntiAlias 属性设置为 true
。
某些属性可以通过 PrintPreviewControl 包含的 PrintPreviewDialog 使用。 (您无需在窗体中添加PrintPreviewControl;当您向窗体中添加对话框时,它会自动包含在PrintPreviewDialog中。)可通过PrintPreviewControl获取的属性包括Columns和Rows属性,这些属性决定了控件上水平和垂直显示的页数。 可以将 Columns 属性作为 Visual Basic 中的 PrintPreviewDialog1.PrintPreviewControl.Columns
、Visual C# 中的 printPreviewDialog1.PrintPreviewControl.Columns
或 Visual C++ 中的 printPreviewDialog1->PrintPreviewControl->Columns
进行访问。
PrintPreviewDialog 性能
在以下情况下,控件 PrintPreviewDialog 初始化缓慢:
- 使用网络打印机。
- 已经修改了此打印机的用户偏好设置,例如双面打印设置。
如果使用 QueryPageSettings 事件修改页面设置,则不会应用优化。
若要应用优化,请将 Switch.System.Drawing.Printing.OptimizePrintPreview
运行时配置选项设置为 true
。
可以在 runtimeconfig.json 配置文件或应用的项目文件中设置该选项:
在项目文件中配置默认值。
若要在项目文件中应用设置,请通过将
<GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
设置为<PropertyGroup>
来启用运行时配置生成。 然后,将<RuntimeHostConfigurationOption>
设置添加到<ItemGroup>
:<Project Sdk="Microsoft.NET.Sdk"> <!-- Other project settings ... --> <PropertyGroup> <GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles> </PropertyGroup> <ItemGroup> <RuntimeHostConfigurationOption Include="Switch.System.Drawing.Printing.OptimizePrintPreview" Value="true" /> </ItemGroup> </Project>
在 runtimeconfig.template.json 源文件中配置默认值。
若要为应用配置默认设置,请在 runtimeconfig.template.json 源文件中应用该设置。 编译或发布应用时,模板文件用于生成运行时配置文件。
{ "configProperties": { "Switch.System.Drawing.Printing.OptimizePrintPreview": true } }
有关运行时配置的详细信息,请参阅 .NET 运行时配置设置。
使用 {appname}.runtimeconfig.json 输出文件配置已发布的应用。
若要配置已发布的应用,请在 {appname}.runtimeconfig.json 文件的
runtimeOptions/configProperties
节中应用设置。{ "runtimeOptions": { "configProperties": { "Switch.System.Drawing.Printing.OptimizePrintPreview": true, } } }
有关运行时配置的详细信息,请参阅 .NET 运行时配置设置。