PrintPreviewDialog 控制項概觀 (Windows Forms)
Windows Forms PrintPreviewDialog 控制項是預先設定的對話方塊,用來顯示列印時 PrintDocument 的顯示方式 。 在 Windows 應用程式內使用它作為簡單的解決方案,而不是設定您自己的對話方塊。 這個控制項包含列印、放大、顯示一或多頁及關閉對話方塊等按鈕。
索引鍵屬性和方法
控制項的索引鍵屬性是 Document ,它會設定要預覽的檔。 檔必須是 PrintDocument 物件。 若要顯示對話方塊,您必須呼叫其 ShowDialog 方法。 反鋸齒可讓文字看起來更流暢,但也可以讓顯示變慢:若要使用它,請將 UseAntiAlias 屬性設定為 true
。
某些屬性可透過 PrintPreviewControl 包含的 PrintPreviewDialog 取得。 (您不需要將此內容 PrintPreviewControl 新增至表單;當您將對話方塊新增至表單時,它會自動包含在 PrintPreviewDialog 內。透過 PrintPreviewControl 取得的屬性範例是 Columns 和 Rows 屬性,可決定控制項上水準和垂直顯示的頁數。 您可以在 Visual Basic、 printPreviewDialog1.PrintPreviewControl.Columns
Visual C# 或 printPreviewDialog1->PrintPreviewControl->Columns
Visual C++ 中存取 ColumnsPrintPreviewDialog1.PrintPreviewControl.Columns
屬性。
PrintPreviewDialog 效能
在下列情況下, PrintPreviewDialog 控制項會非常緩慢地初始化:
- 使用網路印表機。
- 修改此印表機的使用者喜好設定,例如雙工設定。
針對在 .NET Framework 4.5.2 上執行的應用程式,您可以將下列金鑰新增至 < 組態檔的 app設定 > 區段,以改善控制項初始化的 PrintPreviewDialog 效能:
<appSettings>
<add key="EnablePrintPreviewOptimization" value="true" />
</appSettings>
EnablePrintPreviewOptimization
如果索引鍵設定為任何其他值,或索引鍵不存在,則不會套用優化。 如果應用程式在 .NET Framework 4.6 或更新版本上執行,則此機碼沒有任何作用。
針對在 .NET Framework 4.6 或更新版本上執行的應用程式,您可以在應用程式組態檔的 < 運行 > 時間區段中,將下列參數新增至 < AppCoNtextSwitchOverrides > 元素:
<runtime >
<!-- AppContextSwitchOverrides values are in the form of 'key1=true|false;key2=true|false -->
<AppContextSwitchOverrides value = "Switch.System.Drawing.Printing.OptimizePrintPreview=true" />
</runtime >
如果參數不存在或設定為任何其他值,則不會套用優化。
如果您使用 QueryPageSettings 事件來修改印表機設定,即使已設定優化組態參數, PrintPreviewDialog 控制項的效能也不會改善。