PrintDialog 類別

定義

從 Windows Form 應用程式列印時,可讓使用者選取印表機,並且選擇要列印的文件區段。Lets users select a printer and choose which sections of the document to print from a Windows Forms application.

public ref class PrintDialog sealed : System::Windows::Forms::CommonDialog
public sealed class PrintDialog : System.Windows.Forms.CommonDialog
type PrintDialog = class
    inherit CommonDialog
Public NotInheritable Class PrintDialog
Inherits CommonDialog
繼承

範例

下列程式碼範例示範如何使用 PrintDialog 控制項來設定 AllowSomePagesShowHelpDocument 屬性。The following code example demonstrates how to use the PrintDialog control to set the AllowSomePages, ShowHelp, and Document properties. 若要執行此範例,請將下列程式碼貼入包含名為 PrintDialog1PrintDialog 控制項的表單中,以及名為 Button1的按鈕。To run this example, paste the following code into a form that contains a PrintDialog control named PrintDialog1 and a button named Button1. 這個範例需要按鈕的 Click 事件和 docToPrintPrintPage 事件,已連接到在此範例中定義的事件處理方法。This example requires that the button's Click event and the PrintPage event of docToPrint have been connected to the event-handling methods defined in this example.

// Declare the PrintDocument object.
System::Drawing::Printing::PrintDocument^ docToPrint;

// This method will set properties on the PrintDialog object and
// then display the dialog.
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;
   if ( docToPrint == nullptr )
         System::Windows::Forms::MessageBox::Show(  "null" );

   ;
   ;
   if ( PrintDialog1 == nullptr )
         System::Windows::Forms::MessageBox::Show(  "pnull" );

   ;
   ;
   System::Windows::Forms::DialogResult result = PrintDialog1->ShowDialog();
   System::Windows::Forms::MessageBox::Show( result.ToString() );
   ;
   ;
   
   // 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.
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 = gcnew System::Drawing::Font( "Arial",35,System::Drawing::FontStyle::Regular );
   
   // Draw the content.
   e->Graphics->DrawString( text, printFont, System::Drawing::Brushes::Black, 10, 10 );
}

// 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);
}

' 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

備註

當您建立 PrintDialog的實例時,讀取/寫入屬性會設定為初始值。When you create an instance of PrintDialog, the read/write properties are set to initial values. 如需這些值的清單,請參閱 PrintDialog 的函式。For a list of these values, see the PrintDialog constructor. 若要取得使用者使用 PrintDialog所修改的印表機設定,請使用 PrinterSettings 屬性。To get printer settings that are modified by the user with the PrintDialog, use the PrinterSettings property.

如需使用 Windows Forms 進行列印的詳細資訊,請參閱 System.Drawing.Printing 命名空間總覽。For more information about printing with Windows Forms, see the System.Drawing.Printing namespace overview. 如果您想要從 Windows Presentation Foundation 應用程式進行列印,請參閱 System.Printing 命名空間。If you want to print from a Windows Presentation Foundation application, see the System.Printing namespace.

建構函式

PrintDialog()

初始化 PrintDialog 類別的新執行個體。Initializes a new instance of the PrintDialog class.

屬性

AllowCurrentPage

取得或設定值,指出是否顯示 [目前的頁面] 選項按鈕。Gets or sets a value indicating whether the Current Page option button is displayed.

AllowPrintToFile

取得或設定值,指出是否啟用 [列印到檔案] 核取方塊。Gets or sets a value indicating whether the Print to file check box is enabled.

AllowSelection

取得或設定值,指出是否啟用 [選取範圍] 選項按鈕。Gets or sets a value indicating whether the Selection option button is enabled.

AllowSomePages

取得或設定值,指出是否啟用 [頁面] 選項按鈕。Gets or sets a value indicating whether the Pages option button is enabled.

CanRaiseEvents

取得值,指出元件是否能引發事件。Gets a value indicating whether the component can raise an event.

(繼承來源 Component)
Container

取得包含 IContainerComponentGets the IContainer that contains the Component.

(繼承來源 Component)
DesignMode

取得值,指出 Component 目前是否處於設計模式。Gets a value that indicates whether the Component is currently in design mode.

(繼承來源 Component)
Document

取得或設定值,指出用來獲得 PrintDocumentPrinterSettingsGets or sets a value indicating the PrintDocument used to obtain PrinterSettings.

Events

取得附加在這個 Component 上的事件處理常式清單。Gets the list of event handlers that are attached to this Component.

(繼承來源 Component)
PrinterSettings

取得或設定對話方塊將要修改的印表機設定。Gets or sets the printer settings the dialog box modifies.

PrintToFile

取得或設定值,指出是否選取 [列印到檔案] 核取方塊。Gets or sets a value indicating whether the Print to file check box is selected.

ShowHelp

取得或設定值,指出是否顯示 [說明] 按鈕。Gets or sets a value indicating whether the Help button is displayed.

ShowNetwork

取得或設定值,指出是否顯示 [網路] 按鈕。Gets or sets a value indicating whether the Network button is displayed.

Site

取得或設定 ComponentISiteGets or sets the ISite of the Component.

(繼承來源 Component)
Tag

取得或設定包含控制項相關資料的物件。Gets or sets an object that contains data about the control.

(繼承來源 CommonDialog)
UseEXDialog

取得或設定值,指出執行 Windows XP Home Edition、Windows XP Professional、Windows Server 2003Windows XP Home Edition, Windows XP Professional, Windows Server 2003 或更新版本的系統是否應該以 Windows XP 樣式顯示此對話方塊。Gets or sets a value indicating whether the dialog should be shown in the Windows XP style for systems running Windows XP Home Edition、Windows XP Professional、Windows Server 2003Windows XP Home Edition, Windows XP Professional, Windows Server 2003 or later.

方法

CreateObjRef(Type)

建立包含所有相關資訊的物件,這些資訊是產生用來與遠端物件通訊的所需 Proxy。Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(繼承來源 MarshalByRefObject)
Dispose()

釋放 Component 所使用的所有資源。Releases all resources used by the Component.

(繼承來源 Component)
Dispose(Boolean)

釋放 Component 所使用的 Unmanaged 資源,並選擇性地釋放 Managed 資源。Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(繼承來源 Component)
Equals(Object)

判斷指定的物件是否等於目前的物件。Determines whether the specified object is equal to the current object.

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。Serves as the default hash function.

(繼承來源 Object)
GetLifetimeService()

擷取控制這個執行個體存留期 (Lifetime) 原則的目前存留期服務物件。Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(繼承來源 MarshalByRefObject)
GetService(Type)

傳回表示 Component 或其 Container 所提供之服務的物件。Returns an object that represents a service provided by the Component or by its Container.

(繼承來源 Component)
GetType()

取得目前執行個體的 TypeGets the Type of the current instance.

(繼承來源 Object)
HookProc(IntPtr, Int32, IntPtr, IntPtr)

定義為了將特定功能加入通用對話方塊中而覆寫的通用對話方塊攔截程序。Defines the common dialog box hook procedure that is overridden to add specific functionality to a common dialog box.

(繼承來源 CommonDialog)
InitializeLifetimeService()

取得存留期服務物件,以控制這個執行個體的存留期原則。Obtains a lifetime service object to control the lifetime policy for this instance.

(繼承來源 MarshalByRefObject)
MemberwiseClone()

建立目前 Object 的淺層複製。Creates a shallow copy of the current Object.

(繼承來源 Object)
MemberwiseClone(Boolean)

建立目前 MarshalByRefObject 物件的淺層複本。Creates a shallow copy of the current MarshalByRefObject object.

(繼承來源 MarshalByRefObject)
OnHelpRequest(EventArgs)

引發 HelpRequest 事件。Raises the HelpRequest event.

(繼承來源 CommonDialog)
OwnerWndProc(IntPtr, Int32, IntPtr, IntPtr)

定義為了將特定功能加入通用對話方塊中而覆寫的主控視窗 (Owner Window) 程序。Defines the owner window procedure that is overridden to add specific functionality to a common dialog box.

(繼承來源 CommonDialog)
Reset()

將所有選項、最後選取的印表機以及版面設定,重設為預設值。Resets all options, the last selected printer, and the page settings to their default values.

RunDialog(IntPtr)

在衍生類別中覆寫時,指定通用對話方塊。When overridden in a derived class, specifies a common dialog box.

(繼承來源 CommonDialog)
ShowDialog()

以預設的擁有人來執行通用對話方塊。Runs a common dialog box with a default owner.

(繼承來源 CommonDialog)
ShowDialog(IWin32Window)

以指定的擁有人來執行通用對話方塊。Runs a common dialog box with the specified owner.

(繼承來源 CommonDialog)
ToString()

傳回任何包含 Component 名稱的 StringReturns a String containing the name of the Component, if any. 不應覆寫此方法。This method should not be overridden.

(繼承來源 Component)

事件

Disposed

當此元件由 Dispose() 方法的呼叫處置時發生。Occurs when the component is disposed by a call to the Dispose() method.

(繼承來源 Component)
HelpRequest

發生於使用者按一下通用對話方塊上的 [說明] 按鈕時。Occurs when the user clicks the Help button on a common dialog box.

(繼承來源 CommonDialog)

適用於

另請參閱