Form.ShowDialog 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
폼을 모달 대화 상자로 표시합니다.
오버로드
ShowDialog() |
폼을 모달 대화 상자로 표시합니다. |
ShowDialog(IWin32Window) |
폼을 지정된 소유자가 있는 모달 대화 상자로 표시합니다. |
ShowDialog()
폼을 모달 대화 상자로 표시합니다.
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 값 중 하나입니다.
예외
표시될 폼이 이미 표시되어 있는 경우
또는
표시될 폼을 사용할 수 없는 경우
또는
표시될 폼이 최상위 창이 아닌 경우
또는
대화 상자로 표시될 폼이 이미 모달 폼인 경우
또는
현재 프로세스가 사용자 대화형 모드에서 실행되고 있지 않은 경우. 자세한 내용은 UserInteractive를 참조하십시오.
예제
다음은 폼을 모달 대화 상자로 표시하고 대화 상자 폼의 컨트롤 값을 읽을지 여부를 결정하기 전에 대화 상자의 TextBox 반환 값을 평가하는 예제입니다. 이 예제에서는 명명 testDialog
된 를 Form 만들고 라는 TextBox1
컨트롤을 TextBox 포함해야 합니다. 또한 이 예제에서는 모달 대화 상자로 표시 testDialog
하기 위해 이 예제의 코드가 포함되고 다른 Form 에서 호출되어야 합니다. 이 예제에서는 대화 상자의 소유자를 지정하는 의 ShowDialog 버전을 사용합니다.
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
설명
애플리케이션에서 모달 대화 상자를 표시 하려면이 메서드를 사용할 수 있습니다. 이 메서드가 호출되면 다음 코드는 대화 상자가 닫혀 있을 때까지 실행되지 않습니다. 대화 상자는 열거형 값 중 하나를 할당하여 DialogResult 폼의 DialogResult 속성 Button 에 할당하거나 코드에서 폼의 속성을 설정 DialogResult 하여 할당할 수 있습니다. 이 값은 이 메서드에서 반환됩니다. 이 반환 값을 사용하여 대화 상자에서 발생한 작업을 처리하는 방법을 결정할 수 있습니다. 예를 들어 대화 상자가 닫혀 이 메서드를 DialogResult.Cancel
통해 값을 반환한 경우 호출 ShowDialog 후 코드가 실행되지 않도록 할 수 있습니다.
폼이 모달 대화 상자로 표시되면 닫기 단추(폼의 오른쪽 위 모서리에 X가 있는 단추)를 클릭하면 폼이 숨겨지고 속성이 DialogResult 로 DialogResult.Cancel
설정됩니다. 모달이 아닌 양식 Close 과 달리 사용자가 대화 상자의 폼 닫기 단추를 클릭하거나 속성 값을 설정하면 .NET Framework 메서드를 DialogResult 호출하지 않습니다. 대신 폼이 숨겨지고 대화 상자의 새 인스턴스를 만들지 않고 다시 표시할 수 있습니다. 호출 해야 양식 대신 닫힌 하는 대화 상자는 숨겨진 것으로 표시 된 Dispose 폼은 더 이상 필요 없는 애플리케이션에서 폼의 메서드.
이 버전의 메서드는 ShowDialog 폼 또는 컨트롤을 소유자로 지정하지 않습니다. 이 버전이 호출되면 현재 활성 창이 대화 상자의 소유자로 설정됩니다. 특정 소유자를 지정하려면 이 메서드의 다른 버전을 사용합니다.
추가 정보
적용 대상
ShowDialog(IWin32Window)
폼을 지정된 소유자가 있는 모달 대화 상자로 표시합니다.
public:
System::Windows::Forms::DialogResult ShowDialog(System::Windows::Forms::IWin32Window ^ 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를 구현하는 개체입니다.
반환
DialogResult 값 중 하나입니다.
예외
owner
매개 변수에 지정된 폼이 표시된 폼과 같은 경우
표시될 폼이 이미 표시되어 있는 경우
또는
표시될 폼을 사용할 수 없는 경우
또는
표시될 폼이 최상위 창이 아닌 경우
또는
대화 상자로 표시될 폼이 이미 모달 폼인 경우
또는
현재 프로세스가 사용자 대화형 모드에서 실행되고 있지 않은 경우. 자세한 내용은 UserInteractive를 참조하십시오.
예제
다음은 폼을 모달 대화 상자로 표시하고 대화 상자 폼의 컨트롤 값을 읽을지 여부를 결정하기 전에 대화 상자의 TextBox 반환 값을 평가하는 예제입니다. 이 예제에서는 명명 Form2
된 를 Form 만들고 라는 TextBox1
컨트롤을 TextBox 포함해야 합니다. 이 예제에서는 대화 상자의 소유자를 지정하는 의 ShowDialog 버전을 사용합니다.
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
설명
애플리케이션에서 모달 대화 상자를 표시 하려면이 메서드를 사용할 수 있습니다. 이 메서드가 호출되면 다음 코드는 대화 상자가 닫혀 있을 때까지 실행되지 않습니다. 대화 상자는 폼의 속성에 할당하거나 코드에서 폼의 Button 속성을 설정 DialogResult 하여 의 값 DialogResult 중 하나를 할당 DialogResult 할 수 있습니다. 이 값은 이 메서드에서 반환됩니다. 이 반환 값을 사용하여 대화 상자에서 발생한 작업을 처리하는 방법을 결정할 수 있습니다. 예를 들어 대화 상자가 닫혀 이 메서드를 DialogResult.Cancel
통해 값을 반환한 경우 호출 ShowDialog 후 코드가 실행되지 않도록 할 수 있습니다.
폼이 모달 대화 상자로 표시되면 닫기 단추(폼의 오른쪽 위 모서리에 X가 있는 단추)를 클릭하면 폼이 숨겨지고 속성이 DialogResult 로 DialogResult.Cancel
설정됩니다. 모덜리스 양식 Close 과 달리 사용자가 대화 상자의 폼 닫기 단추를 클릭하거나 속성 값을 설정하면 .NET Framework 메서드를 DialogResult 호출하지 않습니다. 대신 폼이 숨겨지고 대화 상자의 새 인스턴스를 만들지 않고 다시 표시할 수 있습니다. 호출 해야 양식 대신 닫힌 하는 대화 상자는 숨겨진 것으로 표시 된 Dispose 폼은 더 이상 필요 없는 애플리케이션에서 폼의 메서드.
이 버전의 ShowDialog 메서드를 사용하면 표시되는 대화 상자를 소유할 특정 양식을 지정할 수 있습니다.
추가 정보
적용 대상
.NET