Form.ShowDialog Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Affiche le formulaire comme une boîte de dialogue modale.
Surcharges
ShowDialog() |
Affiche le formulaire comme une boîte de dialogue modale. |
ShowDialog(IWin32Window) |
Affiche le formulaire comme une boîte de dialogue modale avec le propriétaire spécifié. |
ShowDialog()
Affiche le formulaire comme une boîte de dialogue 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
Retours
Une des valeurs de l'objet DialogResult.
Exceptions
Le formulaire affiché est déjà visible.
- ou -
Le formulaire affiché est désactivé.
- ou -
Le formulaire affiché n'est pas une fenêtre de niveau supérieur.
- ou -
Le formulaire affiché comme une boîte de dialogue est déjà un formulaire modal.
- ou -
Le processus actuel ne s'exécute pas en mode interactif avec l'utilisateur (pour plus d'informations, consultez UserInteractive).
Exemples
L’exemple suivant affiche un formulaire sous forme de boîte de dialogue modale et évalue la valeur de retour de la boîte de dialogue avant de déterminer s’il faut lire la valeur d’un TextBox contrôle dans le formulaire de boîte de dialogue. Cet exemple nécessite qu’un Form nommé testDialog
soit créé et qu’il contienne un TextBox contrôle nommé TextBox1
. En outre, l’exemple exige que le code de cet exemple soit contenu et appelé à partir d’un autre Form afin de s’afficher testDialog
sous la forme d’une boîte de dialogue modale. L’exemple utilise la version de ShowDialog qui spécifie un propriétaire pour la boîte de dialogue.
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
Remarques
Vous pouvez utiliser cette méthode pour afficher une boîte de dialogue modale dans votre application. Lorsque cette méthode est appelée, le code qui la suit n’est exécuté qu’après la fermeture de la boîte de dialogue. Vous pouvez affecter l’une des valeurs de l’énumération DialogResult à la boîte de dialogue en l’affectant à la DialogResult propriété d’un Button sur le formulaire ou en définissant la DialogResult propriété du formulaire dans le code. Cette valeur est ensuite retournée par cette méthode. Vous pouvez utiliser cette valeur de retour pour déterminer comment traiter les actions qui se sont produites dans la boîte de dialogue. Par exemple, si la boîte de dialogue a été fermée et a retourné la DialogResult.Cancel
valeur via cette méthode, vous pouvez empêcher l’exécution du code suivant l’appel à ShowDialog .
Lorsqu’un formulaire s’affiche sous forme de boîte de dialogue modale, le fait de cliquer sur le bouton Fermer (bouton avec un X en haut à droite du formulaire) entraîne la masquage du formulaire et la définition de la DialogResult propriété sur DialogResult.Cancel
. Contrairement aux formulaires non modals, la Close méthode n’est pas appelée par le .NET Framework lorsque l’utilisateur clique sur le bouton fermer le formulaire d’une boîte de dialogue ou définit la valeur de la DialogResult propriété . Au lieu de cela, le formulaire est masqué et peut être affiché à nouveau sans créer d’instance de la boîte de dialogue. Étant donné qu’un formulaire affiché sous forme de boîte de dialogue est masqué au lieu de fermé, vous devez appeler la Dispose méthode du formulaire lorsque votre application n’a plus besoin du formulaire.
Cette version de la ShowDialog méthode ne spécifie pas de formulaire ou de contrôle comme propriétaire. Lorsque cette version est appelée, la fenêtre actuellement active est le propriétaire de la boîte de dialogue. Si vous souhaitez spécifier un propriétaire spécifique, utilisez l’autre version de cette méthode.
Voir aussi
S’applique à
ShowDialog(IWin32Window)
Affiche le formulaire comme une boîte de dialogue modale avec le propriétaire spécifié.
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
Paramètres
- owner
- IWin32Window
Tout objet qui implémente IWin32Window et représente la fenêtre de niveau supérieur à laquelle va appartenir la boîte de dialogue modale.
Retours
Une des valeurs de l'objet DialogResult.
Exceptions
Le formulaire spécifié par le paramètre owner
est le même que le formulaire affiché.
Le formulaire affiché est déjà visible.
- ou -
Le formulaire affiché est désactivé.
- ou -
Le formulaire affiché n'est pas une fenêtre de niveau supérieur.
- ou -
Le formulaire affiché comme une boîte de dialogue est déjà un formulaire modal.
- ou -
Le processus actuel ne s'exécute pas en mode interactif avec l'utilisateur (pour plus d'informations, consultez UserInteractive).
Exemples
L’exemple suivant affiche un formulaire sous forme de boîte de dialogue modale et évalue la valeur de retour de la boîte de dialogue avant de déterminer s’il faut lire la valeur d’un TextBox contrôle dans le formulaire de boîte de dialogue. Cet exemple nécessite qu’un Form nommé Form2
soit créé et qu’il contienne un TextBox contrôle nommé TextBox1
. L’exemple utilise la version de ShowDialog qui spécifie un propriétaire pour la boîte de dialogue.
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
Remarques
Vous pouvez utiliser cette méthode pour afficher une boîte de dialogue modale dans votre application. Lorsque cette méthode est appelée, le code qui la suit n’est exécuté qu’après la fermeture de la boîte de dialogue. Vous pouvez affecter l’une des valeurs de à la boîte de DialogResult dialogue en l’affectant à la DialogResult propriété d’un Button sur le formulaire ou en définissant la DialogResult propriété du formulaire dans le code. Cette valeur est ensuite retournée par cette méthode. Vous pouvez utiliser cette valeur de retour pour déterminer comment traiter les actions qui se sont produites dans la boîte de dialogue. Par exemple, si la boîte de dialogue a été fermée et a retourné la DialogResult.Cancel
valeur via cette méthode, vous pouvez empêcher l’exécution du code suivant l’appel à ShowDialog .
Lorsqu’un formulaire s’affiche sous forme de boîte de dialogue modale, le fait de cliquer sur le bouton Fermer (bouton avec un X en haut à droite du formulaire) entraîne la masquage du formulaire et la définition de la DialogResult propriété sur DialogResult.Cancel
. Contrairement aux formulaires sans mode, la Close méthode n’est pas appelée par le .NET Framework lorsque l’utilisateur clique sur le bouton fermer le formulaire d’une boîte de dialogue ou définit la valeur de la DialogResult propriété . Au lieu de cela, le formulaire est masqué et peut être affiché à nouveau sans créer d’instance de la boîte de dialogue. Étant donné qu’un formulaire affiché sous forme de boîte de dialogue est masqué au lieu de fermé, vous devez appeler la Dispose méthode du formulaire lorsque votre application n’a plus besoin du formulaire.
Cette version de la ShowDialog méthode vous permet de spécifier un formulaire spécifique qui sera propriétaire de la boîte de dialogue affichée.