次の方法で共有


PrintPreviewDialog コントロールの概要 (Windows フォーム)

Windows フォーム PrintPreviewDialog コントロールは、印刷時に PrintDocument がどのように表示されるかを表示するために使用される事前構成済みのダイアログ ボックスです。 独自のダイアログ ボックスを構成する代わりに、Windows ベースのアプリケーション内で単純なソリューションとして使用します。 コントロールには、印刷、拡大、1 つまたは複数のページの表示、ダイアログ ボックスの閉じのためのボタンが含まれています。

主要なプロパティとメソッド

コントロールのキー プロパティは Documentされ、プレビューするドキュメントが設定されます。 ドキュメントは PrintDocument オブジェクトである必要があります。 ダイアログ ボックスを表示するには、その ShowDialog メソッドを呼び出す必要があります。 アンチエイリアシングを使用すると、テキストが滑らかに表示されますが、表示速度が低下する可能性もあります。これを使用するには、UseAntiAlias プロパティを trueに設定します。

特定のプロパティは、PrintPreviewDialog に含まれる PrintPreviewControl を通じて使用できます。 (この PrintPreviewControl をフォームに追加する必要はありません。ダイアログをフォームに追加すると、PrintPreviewDialog に自動的に含まれます)。PrintPreviewControl で使用できるプロパティの例としては、コントロールに水平方向と垂直方向に表示されるページの数を決定する Columns プロパティと Rows プロパティがあります。 Columns プロパティには、Visual Basic の PrintPreviewDialog1.PrintPreviewControl.Columns、Visual C# の printPreviewDialog1.PrintPreviewControl.Columns、または Visual C++ の printPreviewDialog1->PrintPreviewControl->Columns でアクセスできます。

PrintPreviewDialog のパフォーマンス

次の条件では、PrintPreviewDialog コントロールの初期化が非常に遅くなります。

  • ネットワーク プリンターが使用されます。
  • 双方向設定など、このプリンターのユーザー設定が変更されます。

.NET Framework 4.5.2 で実行されているアプリの場合は、構成ファイルの <appSettings> セクションに次のキーを追加して、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 コントロールのパフォーマンスは向上しません。

関連項目