Existe-t-il une boîte de dialogue de confirmation intégrée dans Windows Forms?

115

Je voudrais créer une simple boîte de dialogue de confirmation disant "Veuillez vérifier les informations et si vous êtes sûr qu'elles sont correctes, cliquez sur OK."

Y a-t-il quelque chose de construit comme ça?


la source

Réponses:

222

Voici un exemple. Vous pouvez essayer quelque chose comme ça.

var confirmResult =  MessageBox.Show("Are you sure to delete this item ??",
                                     "Confirm Delete!!",
                                     MessageBoxButtons.YesNo);
if (confirmResult == DialogResult.Yes)
{
    // If 'Yes', do something here.
}
else
{
    // If 'No', do something here.
}

Vous pouvez également essayer à la MessageBoxButtons.OKCancelplace de MessageBoxButtons.YesNo. Cela dépend de vos besoins.

  1. Si vous avez .Net Framework 4.6 ou supérieur, veuillez essayer ceci.
MessageBoxResult confirmResult = MessageBox.Show("Are you sure to delete this item ??", "Confirm Delete!!", MessageBoxButton.YesNo);`

if (confirmResult == MessageBoxResult.Yes)
{
   // If 'Yes', do something here.
}
else
{
   // If 'No', do something here.
}
Raaghav
la source
2
Cette approche a parfaitement fonctionné pour moi. J'ai eu un cas où il y a un bouton "reset" qui supprime les données et cela fournit une excellente méthode pour gérer cela.
Nicholas Kreidberg
1
Dans mon cas, au lieu de DialogResult, j'ai dû utiliser MessageBoxResult
kamil.ka
MessageBoxButtons.YesNo doit lire MessageBoxButton.YesNo et DialogResult change en MessageBoxResult pour .NET 4.6.
Ian
17

MessageBox.Show? Vous pouvez spécifier le titre, la légende et quelques options pour les boutons à afficher.

D'un autre côté, si vous demandez aux gens de confirmer des informations, vous voudrez probablement afficher une boîte de dialogue personnalisée - avec laquelle vous pouvez le faire Form.ShowDialog.

Jon Skeet
la source
1
Merci, je vais regarder dans la classe Form.ShowDialog. BTW, comment avez-vous édité votre question sans qu'elle montre la révision?