PrintDialog クラス

ユーザーがプリンタを選択し、印刷するドキュメント部分を選択できるようにします。

この型のすべてのメンバの一覧については、PrintDialog メンバ を参照してください。

System.Object
   System.MarshalByRefObject
      System.ComponentModel.Component
         System.Windows.Forms.CommonDialog
            System.Windows.Forms.PrintDialog

NotInheritable Public Class PrintDialog
   Inherits CommonDialog
[C#]
public sealed class PrintDialog : CommonDialog
[C++]
public __gc __sealed class PrintDialog : public CommonDialog
[JScript]
public class PrintDialog extends CommonDialog

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

PrintDialog のインスタンスを作成すると、読み書き可能なプロパティが初期値に設定されます。これらの初期値の一覧については、 PrintDialog コンストラクタのトピックを参照してください。

使用例

[Visual Basic, C#] PrintDialog コントロールの使用方法を示すコード例を次に示します。この例を実行するには、PrintDialog1 という名前の PrintDialog コントロールと Button1 という名前のボタンが配置されているフォームに、次のコードを貼り付けます。この例は、Click イベントおよび PrintPage イベントが、この例で定義されているイベント処理メソッドに関連付けられていることを前提としています。

 

    ' Declare the PrintDocument object.
    Private WithEvents docToPrint As New Printing.PrintDocument

    ' This method will set properties on the PrintDialog object and
    ' then display the dialog.
    Private Sub Button1_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button1.Click

        ' Allow the user to choose the page range he or she would
        ' like to print.
        PrintDialog1.AllowSomePages = True

        ' Show the help button.
        PrintDialog1.ShowHelp = True

        ' Set the Document property to the PrintDocument for 
        ' which the PrintPage Event has been handled. To display the
        ' dialog, either this property or the PrinterSettings property 
        ' must be set 
        PrintDialog1.Document = docToPrint

        Dim result As DialogResult = PrintDialog1.ShowDialog()

        ' If the result is OK then print the document.
        If (result = DialogResult.OK) Then
            docToPrint.Print()
        End If

    End Sub

    ' The PrintDialog will print the document
    ' by handling the document's PrintPage event.
    Private Sub document_PrintPage(ByVal sender As Object, _
       ByVal e As System.Drawing.Printing.PrintPageEventArgs) _
           Handles docToPrint.PrintPage

        ' Insert code to render the page here.
        ' This code will be called when the control is drawn.

        ' The following code will render a simple
        ' message on the printed document.
        Dim text As String = "In document_PrintPage method."
        Dim printFont As New System.Drawing.Font _
            ("Arial", 35, System.Drawing.FontStyle.Regular)

        ' Draw the content.
        e.Graphics.DrawString(text, printFont, _
            System.Drawing.Brushes.Black, 10, 10)
    End Sub

[C#] 

    // Declare the PrintDocument object.
    private System.Drawing.Printing.PrintDocument docToPrint = 
        new System.Drawing.Printing.PrintDocument();

    // This method will set properties on the PrintDialog object and
    // then display the dialog.
    private void Button1_Click(System.Object sender, 
        System.EventArgs e)
    {

        // Allow the user to choose the page range he or she would
        // like to print.
        PrintDialog1.AllowSomePages = true;

        // Show the help button.
        PrintDialog1.ShowHelp = true;

        // Set the Document property to the PrintDocument for 
        // which the PrintPage Event has been handled. To display the
        // dialog, either this property or the PrinterSettings property 
        // must be set 
        PrintDialog1.Document = docToPrint;

        DialogResult result = PrintDialog1.ShowDialog();

        // If the result is OK then print the document.
        if (result==DialogResult.OK)
        {
            docToPrint.Print();
        }

    }

    // The PrintDialog will print the document
    // by handling the document's PrintPage event.
    private void document_PrintPage(object sender, 
        System.Drawing.Printing.PrintPageEventArgs e)
    {

        // Insert code to render the page here.
        // This code will be called when the control is drawn.

        // The following code will render a simple
        // message on the printed document.
        string text = "In document_PrintPage method.";
        System.Drawing.Font printFont = new System.Drawing.Font
            ("Arial", 35, System.Drawing.FontStyle.Regular);

        // Draw the content.
        e.Graphics.DrawString(text, printFont, 
            System.Drawing.Brushes.Black, 10, 10);
    }

[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.Windows.Forms

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

アセンブリ: System.Windows.Forms (System.Windows.Forms.dll 内)

参照

PrintDialog メンバ | System.Windows.Forms 名前空間 | PageSetupDialog | PrintPreviewDialog