Form.ShowDialog Método

Definição

Mostra o formulário como uma caixa de diálogo modal.

Sobrecargas

Name Description
ShowDialog()

Mostra o formulário como uma caixa de diálogo modal.

ShowDialog(IWin32Window)

Mostra o formulário como uma caixa de diálogo modal com o proprietário especificado.

ShowDialog()

Origem:
Form.cs
Origem:
Form.cs
Origem:
Form.cs
Origem:
Form.cs
Origem:
Form.cs

Mostra o formulário como uma caixa de diálogo modal.

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

Devoluções

Um dos DialogResult valores.

Exceções

A forma mostrada já é visível.

-ou-

A forma mostrada está desativada.

-ou-

O formulário mostrado não é uma janela de nível superior.

-ou-

A forma mostrada como uma caixa de diálogo já é uma forma modal.

-ou-

O processo atual não está a correr em modo interativo com o utilizador (para mais informações, ver UserInteractive).

Exemplos

O exemplo seguinte apresenta um formulário como uma caixa de diálogo modal e avalia o valor de retorno da caixa de diálogo antes de determinar se deve ler o valor de um TextBox controlo no formulário da caixa de diálogo. Este exemplo exige que um Form nome testDialog seja criado e que contenha um TextBox controlo chamado TextBox1. Além disso, o exemplo exige que o código neste exemplo seja contido e chamado de um outro Form para ser apresentado testDialog como uma caixa de diálogo modal. O exemplo usa a versão que ShowDialog especifica um proprietário para a caixa de diálogo.

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

Observações

Pode usar este método para mostrar uma caixa de diálogo modal na sua aplicação. Quando este método é chamado, o código que o segue não é executado até depois de a caixa de diálogo ser fechada. A caixa de diálogo pode ser atribuída a um dos valores da DialogResult enumeração atribuindo-a à DialogResult propriedade de a Button no formulário ou definindo a DialogResult propriedade do formulário no código. Este valor é então devolvido por este método. Pode usar este valor de retorno para determinar como processar as ações que ocorreram na caixa de diálogo. Por exemplo, se a caixa de diálogo estivesse fechada e devolvesse o DialogResult.Cancel valor através deste método, poderia impedir que o código seguinte à chamada a ShowDialog fosse executado.

Quando um formulário é exibido como uma caixa de diálogo modal, clicar no botão Fechar (o botão com um X no canto superior direito do formulário) faz com que o formulário fique oculto e a DialogResult propriedade seja definida para DialogResult.Cancel. Ao contrário das formas não modais, o método Close não é chamado pela .NET Framework quando o utilizador clica no botão de fechar formulário de uma caixa de diálogo ou define o valor da propriedade DialogResult. Em vez disso, o formulário está oculto e pode ser mostrado novamente sem criar uma nova instância da caixa de diálogo. Como um formulário apresentado como uma caixa de diálogo está oculto em vez de fechado, deve chamar o Dispose método do formulário quando o formulário já não for necessário para a sua aplicação.

Esta versão do ShowDialog método não especifica uma forma ou controlo como seu proprietário. Quando esta versão é chamada, a janela atualmente ativa passa a ser a proprietária da caixa de diálogo. Se quiser especificar um proprietário específico, use a outra versão deste método.

Ver também

Aplica-se a

ShowDialog(IWin32Window)

Origem:
Form.cs
Origem:
Form.cs
Origem:
Form.cs
Origem:
Form.cs
Origem:
Form.cs

Mostra o formulário como uma caixa de diálogo modal com o proprietário especificado.

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

Parâmetros

owner
IWin32Window

Qualquer objeto que implemente IWin32Window isso representa a janela de topo que irá possuir a caixa de diálogo modal.

Devoluções

Um dos DialogResult valores.

Exceções

A forma especificada no owner parâmetro é a mesma da forma apresentada.

A forma mostrada já é visível.

-ou-

A forma mostrada está desativada.

-ou-

O formulário mostrado não é uma janela de nível superior.

-ou-

A forma mostrada como uma caixa de diálogo já é uma forma modal.

-ou-

O processo atual não está a correr em modo interativo com o utilizador (para mais informações, ver UserInteractive).

Exemplos

O exemplo seguinte apresenta um formulário como uma caixa de diálogo modal e avalia o valor de retorno da caixa de diálogo antes de determinar se deve ler o valor de um TextBox controlo no formulário da caixa de diálogo. Este exemplo exige que um Form nome Form2 seja criado e que contenha um TextBox controlo chamado TextBox1. O exemplo usa a versão que ShowDialog especifica um proprietário para a caixa de diálogo.

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

Observações

Pode usar este método para mostrar uma caixa de diálogo modal na sua aplicação. Quando este método é chamado, o código que o segue não é executado até depois de a caixa de diálogo ser fechada. A caixa de diálogo pode ser atribuída a um dos valores de DialogResult atribuindo-o à DialogResult propriedade a Button no formulário ou definindo a DialogResult propriedade do formulário no código. Este valor é então devolvido por este método. Pode usar este valor de retorno para determinar como processar as ações que ocorreram na caixa de diálogo. Por exemplo, se a caixa de diálogo estivesse fechada e devolvesse o DialogResult.Cancel valor através deste método, poderia impedir que o código seguinte à chamada a ShowDialog fosse executado.

Quando um formulário é exibido como uma caixa de diálogo modal, clicar no botão Fechar (o botão com um X no canto superior direito do formulário) faz com que o formulário fique oculto e a DialogResult propriedade seja definida para DialogResult.Cancel. Ao contrário dos formulários sem modo, o método Close não é chamado pelo .NET Framework quando o utilizador clica no botão fechar formulário de uma caixa de diálogo ou define o valor da propriedade DialogResult. Em vez disso, o formulário está oculto e pode ser mostrado novamente sem criar uma nova instância da caixa de diálogo. Como um formulário apresentado como uma caixa de diálogo está oculto em vez de fechado, deve chamar o Dispose método do formulário quando o formulário já não for necessário para a sua aplicação.

Esta versão do ShowDialog método permite-lhe especificar um formulário específico que será proprietário da caixa de diálogo mostrada.

Ver também

Aplica-se a