Form.ShowDialog Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Visualizza il modulo come finestra di dialogo modale.
Overload
| Nome | Descrizione |
|---|---|
| ShowDialog() |
Visualizza il modulo come finestra di dialogo modale. |
| ShowDialog(IWin32Window) |
Visualizza il modulo come finestra di dialogo modale con il proprietario specificato. |
ShowDialog()
- Origine:
- Form.cs
- Origine:
- Form.cs
- Origine:
- Form.cs
- Origine:
- Form.cs
- Origine:
- Form.cs
Visualizza il modulo come finestra di dialogo modale.
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
Restituisce
Uno dei DialogResult valori.
Eccezioni
Il modulo visualizzato è già visibile.
oppure
Il modulo visualizzato è disabilitato.
oppure
Il modulo visualizzato non è una finestra di primo livello.
oppure
Il modulo visualizzato come finestra di dialogo è già un modulo modale.
oppure
Il processo corrente non è in esecuzione in modalità interattiva utente (per altre informazioni, vedere UserInteractive).
Esempio
Nell'esempio seguente viene visualizzato un modulo come finestra di dialogo modale e viene valutato il valore restituito della finestra di dialogo prima di determinare se leggere il valore di un TextBox controllo nella maschera della finestra di dialogo. In questo esempio è necessario che venga creato un Form oggetto denominato testDialog e che contenga un TextBox controllo denominato TextBox1. Inoltre, l'esempio richiede che il codice in questo esempio sia contenuto e chiamato da un oggetto diverso Form per visualizzare testDialog come finestra di dialogo modale. Nell'esempio viene utilizzata la versione di che specifica un proprietario per la finestra di ShowDialog dialogo.
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
Commenti
È possibile usare questo metodo per visualizzare una finestra di dialogo modale nell'applicazione. Quando questo metodo viene chiamato, il codice seguente non viene eseguito fino alla chiusura della finestra di dialogo. È possibile assegnare alla finestra di dialogo uno dei valori dell'enumerazione DialogResult assegnandolo alla DialogResult proprietà di un Button oggetto nella maschera o impostando la DialogResult proprietà della maschera nel codice. Questo valore viene quindi restituito da questo metodo. È possibile utilizzare questo valore restituito per determinare come elaborare le azioni che si sono verificate nella finestra di dialogo. Ad esempio, se la finestra di dialogo è stata chiusa e ha restituito il DialogResult.Cancel valore tramite questo metodo, è possibile impedire l'esecuzione del codice dopo la chiamata a ShowDialog .
Quando un modulo viene visualizzato come finestra di dialogo modale, facendo clic sul pulsante Chiudi (il pulsante con una X nell'angolo superiore destro del modulo) il modulo viene nascosto e la DialogResult proprietà deve essere impostata su DialogResult.Cancel. A differenza dei moduli non modali, il Close metodo non viene chiamato da .NET Framework quando l'utente fa clic sul pulsante chiudi modulo di una finestra di dialogo o imposta il valore della DialogResult proprietà. Il modulo è invece nascosto e può essere visualizzato di nuovo senza creare una nuova istanza della finestra di dialogo. Poiché un modulo visualizzato come finestra di dialogo è nascosto anziché chiuso, è necessario chiamare il Dispose metodo del modulo quando il modulo non è più necessario per l'applicazione.
Questa versione del ShowDialog metodo non specifica una maschera o un controllo come proprietario. Quando questa versione viene chiamata, la finestra attualmente attiva viene resa proprietaria della finestra di dialogo. Se si desidera specificare un proprietario specifico, usare l'altra versione di questo metodo.
Vedi anche
Si applica a
ShowDialog(IWin32Window)
- Origine:
- Form.cs
- Origine:
- Form.cs
- Origine:
- Form.cs
- Origine:
- Form.cs
- Origine:
- Form.cs
Visualizza il modulo come finestra di dialogo modale con il proprietario specificato.
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
Parametri
- owner
- IWin32Window
Qualsiasi oggetto che implementa IWin32Window che rappresenta la finestra di primo livello che sarà proprietaria della finestra di dialogo modale.
Restituisce
Uno dei DialogResult valori.
Eccezioni
Il modulo specificato nel owner parametro è lo stesso del modulo visualizzato.
Il modulo visualizzato è già visibile.
oppure
Il modulo visualizzato è disabilitato.
oppure
Il modulo visualizzato non è una finestra di primo livello.
oppure
Il modulo visualizzato come finestra di dialogo è già un modulo modale.
oppure
Il processo corrente non è in esecuzione in modalità interattiva utente (per altre informazioni, vedere UserInteractive).
Esempio
Nell'esempio seguente viene visualizzato un modulo come finestra di dialogo modale e viene valutato il valore restituito della finestra di dialogo prima di determinare se leggere il valore di un TextBox controllo nella maschera della finestra di dialogo. In questo esempio è necessario che venga creato un Form oggetto denominato Form2 e che contenga un TextBox controllo denominato TextBox1. Nell'esempio viene utilizzata la versione di che specifica un proprietario per la finestra di ShowDialog dialogo.
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
Commenti
È possibile usare questo metodo per visualizzare una finestra di dialogo modale nell'applicazione. Quando questo metodo viene chiamato, il codice seguente non viene eseguito fino alla chiusura della finestra di dialogo. È possibile assegnare alla finestra di dialogo uno dei valori di DialogResult assegnandolo alla DialogResult proprietà di un Button oggetto nella maschera o impostando la DialogResult proprietà della maschera nel codice. Questo valore viene quindi restituito da questo metodo. È possibile utilizzare questo valore restituito per determinare come elaborare le azioni che si sono verificate nella finestra di dialogo. Ad esempio, se la finestra di dialogo è stata chiusa e ha restituito il DialogResult.Cancel valore tramite questo metodo, è possibile impedire l'esecuzione del codice dopo la chiamata a ShowDialog .
Quando un modulo viene visualizzato come finestra di dialogo modale, facendo clic sul pulsante Chiudi (il pulsante con una X nell'angolo superiore destro del modulo) il modulo viene nascosto e la DialogResult proprietà deve essere impostata su DialogResult.Cancel. A differenza dei moduli modeless, il Close metodo non viene chiamato da .NET Framework quando l'utente fa clic sul pulsante chiudi modulo di una finestra di dialogo o imposta il valore della DialogResult proprietà. Il modulo è invece nascosto e può essere visualizzato di nuovo senza creare una nuova istanza della finestra di dialogo. Poiché un modulo visualizzato come finestra di dialogo è nascosto anziché chiuso, è necessario chiamare il Dispose metodo del modulo quando il modulo non è più necessario per l'applicazione.
Questa versione del ShowDialog metodo consente di specificare un modulo specifico proprietario della finestra di dialogo visualizzata.