Windows Forms PrintPreviewDialog 控件是預先設定的對話框,用來顯示 列印時 PrintDocument 的顯示方式。 在 Windows 型的應用程式中使用它作為簡單的解決方案,而不是設定您自己的對話方塊。 這個控制項包含列印、放大、顯示一或多頁及關閉對話方塊等按鈕。
關鍵屬性和方法
此控制項的關鍵屬性是 Document,它會設定要預覽的文件。 該文件必須是 PrintDocument 物件。 為了顯示該對話方塊,您必須呼叫其 ShowDialog 方法。 抗鋸齒可使文字看起來更平滑,但也會使顯示變得較慢;若要使用它,請將 UseAntiAlias 屬性設為 true
。
某些屬性可透過 PrintPreviewDialog 所包含的 PrintPreviewControl 取得。 (您不需要在表單中添加 PrintPreviewControl; 當您將對話框添加到 PrintPreviewDialog 時,它會自動包含在其中。透過 PrintPreviewControl 可以取得的屬性範例有 Columns 和 Rows 屬性,這些屬性決定控制項上水平和垂直顯示的頁面數。 您可以在 Visual Basic 中以 PrintPreviewDialog1.PrintPreviewControl.Columns
、在 Visual C# 中以 printPreviewDialog1.PrintPreviewControl.Columns
或在 Visual C++ 中以 printPreviewDialog1->PrintPreviewControl->Columns
形式存取 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 運行時間組態設定。