Form.ShowDialog Form.ShowDialog Form.ShowDialog Form.ShowDialog Method

정의

폼을 모달 대화 상자로 표시합니다.Shows the form as a modal dialog box.

오버로드

ShowDialog() ShowDialog() ShowDialog() ShowDialog()

폼을 모달 대화 상자로 표시합니다.Shows the form as a modal dialog box.

ShowDialog(IWin32Window) ShowDialog(IWin32Window) ShowDialog(IWin32Window) ShowDialog(IWin32Window)

폼을 지정된 소유자가 있는 모달 대화 상자로 표시합니다.Shows the form as a modal dialog box with the specified owner.

ShowDialog() ShowDialog() ShowDialog() ShowDialog()

폼을 모달 대화 상자로 표시합니다.Shows the form as a modal dialog box.

public:
 System::Windows::Forms::DialogResult ShowDialog();
public System.Windows.Forms.DialogResult ShowDialog ();
member this.ShowDialog : unit -> System.Windows.Forms.DialogResult
Public Function ShowDialog () As DialogResult

반환

DialogResult 값 중 하나입니다.One of the DialogResult values.

예외

표시될 폼이 이미 표시되어 있는 경우The form being shown is already visible.

또는-or- 표시될 폼을 사용할 수 없는 경우The form being shown is disabled.

또는-or- 표시될 폼이 최상위 창이 아닌 경우The form being shown is not a top-level window.

또는-or- 대화 상자로 표시될 폼이 이미 모달 폼인 경우The form being shown as a dialog box is already a modal form.

또는-or- 현재 프로세스가 사용자 대화형 모드에서 실행되고 있지 않은 경우. 자세한 내용은 UserInteractive를 참조하십시오.The current process is not running in user interactive mode (for more information, see UserInteractive).

예제

다음 코드 예제에서는 폼을 모달 대화 상자로 표시 하 고 대화 상자의 반환 값의 값을 읽어올 지 여부를 결정 하기 전에 평가 TextBox 대화 상자 폼에서 컨트롤입니다.The following code example displays a form as a modal dialog box and evaluates the return value of the dialog box before determining whether to read the value of a TextBox control on the dialog box form. 이 예제에서는 Form 라는 testDialog 만들어집니다 및 포함 된를 TextBox 라는 컨트롤 TextBox1합니다.This example requires that a Form named testDialog is created and that it contains a TextBox control named TextBox1. 이 예제의 코드에에서 포함 된 이며 다른 호출 예제에 필요 게다가 Form 표시 하기 위해 testDialog 모달 대화 상자로 합니다.Furthermore, the example requires that code in this example is contained and called from a different Form in order to display testDialog as a modal dialog box. 버전을 사용 하는 예제 ShowDialog 대화 상자에 대 한 소유자를 지정 하는 합니다.The example uses the version of ShowDialog that specifies an owner for the dialog box.

void ShowMyDialogBox()
{
   Form2^ testDialog = gcnew Form2;
   
   // Show testDialog as a modal dialog and determine if DialogResult = OK.
   if ( testDialog->ShowDialog( this ) == ::DialogResult::OK )
   {
      
      // Read the contents of testDialog's TextBox.
      this->txtResult->Text = testDialog->TextBox1->Text;
   }
   else
   {
      this->txtResult->Text = "Cancelled";
   }

   delete testDialog;
}
public void ShowMyDialogBox()
{
   Form2 testDialog = new Form2();

   // Show testDialog as a modal dialog and determine if DialogResult = OK.
   if (testDialog.ShowDialog(this) == DialogResult.OK)
   {
      // Read the contents of testDialog's TextBox.
      this.txtResult.Text = testDialog.TextBox1.Text;
   }
   else
   {
      this.txtResult.Text = "Cancelled";
   }
   testDialog.Dispose();
}
Public Sub ShowMyDialogBox()
    Dim testDialog As New Form2()
    
    ' Show testDialog as a modal dialog and determine if DialogResult = OK.
    If testDialog.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK Then
        ' Read the contents of testDialog's TextBox.
        txtResult.Text = testDialog.TextBox1.Text
    Else
        txtResult.Text = "Cancelled"
    End If
    testDialog.Dispose()
End Sub 'ShowMyDialogBox

설명

응용 프로그램에서 모달 대화 상자를 표시 하려면이 메서드를 사용할 수 있습니다.You can use this method to display a modal dialog box in your application. 이 메서드를 호출 하는 경우 대화 상자를 닫은 후 다음 코드를 때까지 실행 되지 않습니다.When this method is called, the code following it is not executed until after the dialog box is closed. 값 중 하나는 대화 상자를 할당할 수 있습니다는 DialogResult 할당 하 여 열거형을 DialogResult 의 속성을 Button 양식의 하거나 설정 하 여는 DialogResult 코드에서 폼의 속성.The dialog box can be assigned one of the values of the DialogResult enumeration by assigning it to the DialogResult property of a Button on the form or by setting the DialogResult property of the form in code. 그런 다음이 값은이 메서드에서 반환 됩니다.This value is then returned by this method. 대화 상자에서 발생 한 작업을 처리 하는 방법을 결정이 반환 값을 사용할 수 있습니다.You can use this return value to determine how to process the actions that occurred in the dialog box. 예를 들어, 대화 상자를 종료 하 고 반환 되었으면 합니다 DialogResult.Cancel 값이이 메서드를 통해 호출 다음에 코드를 방지할 수 있습니다 ShowDialog 실행 합니다.For example, if the dialog box was closed and returned the DialogResult.Cancel value through this method, you could prevent code following the call to ShowDialog from executing.

폼을 모달 대화 상자로 표시 되 면 클릭 하는 닫기 단추 (폼의 오른쪽 위 모서리에 있는 x 단추) 하면 폼이 표시 되지 않도록 하며 DialogResult 속성을 설정할 DialogResult.Cancel합니다.When a form is displayed as a modal dialog box, clicking the Close button (the button with an X at the upper-right corner of the form) causes the form to be hidden and the DialogResult property to be set to DialogResult.Cancel. 비 모달 폼 달리 합니다 Close 대화 상자 폼 닫기 단추를 클릭 하거나 값을 설정 하는 경우.NET Framework에서 메서드가 호출 되지 않습니다는 DialogResult 속성입니다.Unlike non-modal forms, the Close method is not called by the .NET Framework when the user clicks the close form button of a dialog box or sets the value of the DialogResult property. 대신 폼 숨겨져 있고 대화 상자의 새 인스턴스를 만들지 않고 다시 표시 될 수 있습니다.Instead the form is hidden and can be shown again without creating a new instance of the dialog box. 호출 해야 양식 대신 닫힌 하는 대화 상자는 숨겨진 것으로 표시 된 Dispose 폼은 더 이상 필요 없는 응용 프로그램에서 폼의 메서드.Because a form displayed as a dialog box is hidden instead of closed, you must call the Dispose method of the form when the form is no longer needed by your application.

이 버전의는 ShowDialog 메서드로 지정 하지 않습니다 양식이 나 컨트롤의 소유자입니다.This version of the ShowDialog method does not specify a form or control as its owner. 이 버전 호출 될 때 현재 활성 창 대화 상자의 소유자가 됩니다.When this version is called, the currently active window is made the owner of the dialog box. 특정 소유자를 지정 하려는 경우이 메서드의 다른 버전을 사용 합니다.If you want to specify a specific owner, use the other version of this method.

추가 정보

ShowDialog(IWin32Window) ShowDialog(IWin32Window) ShowDialog(IWin32Window) ShowDialog(IWin32Window)

폼을 지정된 소유자가 있는 모달 대화 상자로 표시합니다.Shows the form as a modal dialog box with the specified owner.

public:
 System::Windows::Forms::DialogResult ShowDialog(System::Windows::Forms::IWin32Window ^ owner);
public System.Windows.Forms.DialogResult ShowDialog (System.Windows.Forms.IWin32Window owner);
member this.ShowDialog : System.Windows.Forms.IWin32Window -> System.Windows.Forms.DialogResult
Public Function ShowDialog (owner As IWin32Window) As DialogResult

매개 변수

owner
IWin32Window IWin32Window IWin32Window IWin32Window

모달 대화 상자를 소유할 최상위 창을 나타내는 IWin32Window를 구현하는 개체입니다.Any object that implements IWin32Window that represents the top-level window that will own the modal dialog box.

반환

DialogResult 값 중 하나입니다.One of the DialogResult values.

예외

owner 매개 변수에 지정된 폼이 표시된 폼과 같은 경우The form specified in the owner parameter is the same as the form being shown.

표시될 폼이 이미 표시되어 있는 경우The form being shown is already visible.

또는-or- 표시될 폼을 사용할 수 없는 경우The form being shown is disabled.

또는-or- 표시될 폼이 최상위 창이 아닌 경우The form being shown is not a top-level window.

또는-or- 대화 상자로 표시될 폼이 이미 모달 폼인 경우The form being shown as a dialog box is already a modal form.

또는-or- 현재 프로세스가 사용자 대화형 모드에서 실행되고 있지 않은 경우. 자세한 내용은 UserInteractive를 참조하십시오.The current process is not running in user interactive mode (for more information, see UserInteractive).

예제

다음 코드 예제에서는 폼을 모달 대화 상자로 표시 하 고 대화 상자의 반환 값의 값을 읽어올 지 여부를 결정 하기 전에 평가 TextBox 대화 상자 폼에서 컨트롤입니다.The following code example displays a form as a modal dialog box and evaluates the return value of the dialog box before determining whether to read the value of a TextBox control on the dialog box form. 이 예제에서는 Form 라는 Form2 만들어집니다 및 포함 된를 TextBox 라는 컨트롤 TextBox1합니다.This example requires that a Form named Form2 is created and that it contains a TextBox control named TextBox1. 버전을 사용 하는 예제 ShowDialog 대화 상자에 대 한 소유자를 지정 하는 합니다.The example uses the version of ShowDialog that specifies an owner for the dialog box.

void ShowMyDialogBox()
{
   Form2^ testDialog = gcnew Form2;
   
   // Show testDialog as a modal dialog and determine if DialogResult = OK.
   if ( testDialog->ShowDialog( this ) == ::DialogResult::OK )
   {
      
      // Read the contents of testDialog's TextBox.
      this->txtResult->Text = testDialog->TextBox1->Text;
   }
   else
   {
      this->txtResult->Text = "Cancelled";
   }

   delete testDialog;
}
public void ShowMyDialogBox()
{
   Form2 testDialog = new Form2();

   // Show testDialog as a modal dialog and determine if DialogResult = OK.
   if (testDialog.ShowDialog(this) == DialogResult.OK)
   {
      // Read the contents of testDialog's TextBox.
      this.txtResult.Text = testDialog.TextBox1.Text;
   }
   else
   {
      this.txtResult.Text = "Cancelled";
   }
   testDialog.Dispose();
}
Public Sub ShowMyDialogBox()
    Dim testDialog As New Form2()
    
    ' Show testDialog as a modal dialog and determine if DialogResult = OK.
    If testDialog.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK Then
        ' Read the contents of testDialog's TextBox.
        txtResult.Text = testDialog.TextBox1.Text
    Else
        txtResult.Text = "Cancelled"
    End If
    testDialog.Dispose()
End Sub 'ShowMyDialogBox

설명

응용 프로그램에서 모달 대화 상자를 표시 하려면이 메서드를 사용할 수 있습니다.You can use this method to display a modal dialog box in your application. 이 메서드를 호출 하는 경우 대화 상자를 닫은 후 다음 코드를 때까지 실행 되지 않습니다.When this method is called, the code following it is not executed until after the dialog box is closed. 값 중 하나는 대화 상자를 할당할 수 있습니다 DialogResult 할당 하 여는 DialogResult 의 속성을 Button 양식의 하거나 설정 하 여를 DialogResult 코드에서 폼의 속성입니다.The dialog box can be assigned one of the values of DialogResult by assigning it to the DialogResult property of a Button on the form or by setting the DialogResult property of the form in code. 그런 다음이 값은이 메서드에서 반환 됩니다.This value is then returned by this method. 대화 상자에서 발생 한 작업을 처리 하는 방법을 결정이 반환 값을 사용할 수 있습니다.You can use this return value to determine how to process the actions that occurred in the dialog box. 예를 들어, 대화 상자를 종료 하 고 반환 되었으면 합니다 DialogResult.Cancel 값이이 메서드를 통해 호출 다음에 코드를 방지할 수 있습니다 ShowDialog 실행 합니다.For example, if the dialog box was closed and returned the DialogResult.Cancel value through this method, you could prevent code following the call to ShowDialog from executing.

폼을 모달 대화 상자로 표시 되 면 클릭 하는 닫기 단추 (폼의 오른쪽 위 모서리에 있는 x 단추) 하면 폼이 표시 되지 않도록 하며 DialogResult 속성을 설정할 DialogResult.Cancel합니다.When a form is displayed as a modal dialog box, clicking the Close button (the button with an X at the upper-right corner of the form) causes the form to be hidden and the DialogResult property to be set to DialogResult.Cancel. 모덜리스 폼과 달리 합니다 Close 대화 상자 폼 닫기 단추를 클릭 하거나 값을 설정 하는 경우.NET Framework에서 메서드가 호출 되지 않습니다는 DialogResult 속성입니다.Unlike modeless forms, the Close method is not called by the .NET Framework when the user clicks the close form button of a dialog box or sets the value of the DialogResult property. 대신 폼 숨겨져 있고 대화 상자의 새 인스턴스를 만들지 않고 다시 표시 될 수 있습니다.Instead the form is hidden and can be shown again without creating a new instance of the dialog box. 호출 해야 양식 대신 닫힌 하는 대화 상자는 숨겨진 것으로 표시 된 Dispose 폼은 더 이상 필요 없는 응용 프로그램에서 폼의 메서드.Because a form displayed as a dialog box is hidden instead of closed, you must call the Dispose method of the form when the form is no longer needed by your application.

이 버전의는 ShowDialog 메서드를 사용 하면 표시 되는 대화 상자를 소유 하는 특정 형태를 지정할 수 있습니다.This version of the ShowDialog method allows you to specify a specific form that will own the dialog box that is shown.

추가 정보

적용 대상