方法: Windows フォーム アプリケーションに印刷プレビューを表示する

PrintPreviewDialog コントロールを使用して、ユーザーがドキュメントを表示できるようにします。多くの場合、印刷前に実行されます。

これを行うには、PrintDocument クラスのインスタンスを指定する必要があります。これは印刷されるドキュメントです。 PrintDocument コンポーネントで印刷プレビューを使用する方法の詳細については、「方法: 印刷プレビューを使用して Windows フォームで印刷する方法」を参照してください。

注意

実行時にユーザーが PrintPreviewDialog コントロールを使用するには、ローカルまたはネットワーク経由でコンピューターにプリンターがインストールされている必要があります。これは、印刷時のドキュメントの外観を PrintPreviewDialog コンポーネントが決定する方法の一部であるためです。

PrintPreviewDialog コントロールは、PrinterSettings クラスを使用します。 さらに、PrintPreviewDialog コントロールは、PrintPreviewDialog コンポーネントと同じように PageSettings クラスを使用します。 PrintPreviewDialog コントロールの Document プロパティに指定された印刷ドキュメントは、PrinterSettings クラスと PageSettings クラスの両方のインスタンスを参照します。これらを使用して、ドキュメントがプレビュー ウィンドウにレンダリングされます。

PrintPreviewDialog コントロールを使用してページを表示するには

  • ShowDialog メソッドを使用してダイアログ ボックスを表示し、使用する PrintDocument を指定します。

    次のコード例では、Button コントロールの Click イベント ハンドラーによって、PrintPreviewDialog コントロールのインスタンスが開きます。 印刷ドキュメントは、Document プロパティに指定されます。 次の例では、印刷ドキュメントが指定されません。

    この例では、フォームに、Button コントロール、myDocument という名前の PrintDocument コンポーネント、および PrintPreviewDialog コントロールが含まれている必要があります。

    Private Sub Button1_Click(ByVal sender As System.Object, _  
       ByVal e As System.EventArgs) Handles Button1.Click  
       ' The print document 'myDocument' used below  
       ' is merely for an example.  
       ' You will have to specify your own print document.  
       PrintPreviewDialog1.Document = myDocument  
       PrintPreviewDialog1.ShowDialog()  
    End Sub  
    
    private void button1_Click(object sender, System.EventArgs e)  
    {  
       // The print document 'myDocument' used below  
       // is merely for an example.  
       // You will have to specify your own print document.  
       printPreviewDialog1.Document = myDocument;  
       printPreviewDialog1.ShowDialog();  
    }  
    
    private:  
       void button1_Click(System::Object ^ sender,  
          System::EventArgs ^ e)  
       {  
          // The print document 'myDocument' used below  
          // is merely for an example.  
          // You will have to specify your own print document.  
          printPreviewDialog1->Document = myDocument;  
          printPreviewDialog1->ShowDialog();  
       }  
    

    (Visual C#、Visual C++) フォームのコンストラクターに次のコードを配置して、イベント ハンドラーを登録します。

    this.button1.Click += new System.EventHandler(this.button1_Click);  
    
    this->button1->Click += gcnew  
       System::EventHandler(this, &Form1::button1_Click);  
    

関連項目