Dans mes projets (WPF), j'utilise System.Windows.MessageBox
pour afficher à l'utilisateur une boîte de dialogue de confirmation pour les opérations critiques, telles qu'une opération de suppression.MessageBox-confirmation pour les opérations critiques
Mon problème est que si je spécifie comme valeur de bouton MessageBoxButton.YesNo
, l'utilisateur ne peut pas utiliser la touche d'échappement pour annuler l'opération. IMO c'est l'une des choses les plus ennuyantes, un programme peut faire, montrant un dialogue sans possibilité d'annuler/fermer le dialogue à travers la touche d'échappement.
D'autres possibilités sont MessageBoxButton.YesNoCancel
, mais IMO cela est déroutant car il montre trois boutons pour seulement deux opérations. Ou on peut utiliser MessageBox.OKCancel
, mais c'est IMO pas assez clair. Dans mes boîtes de dialogue, je veux demander à l'utilisateur si elle veut vraiment exécuter l'opération. Et pour cela, un simple ok n'est pas approprié. Un oui (je veux) est beaucoup mieux qu'un ok (continuer).
Comment gérez-vous cela? Est-ce un non-sujet ou pensez-vous que je le fais et avoir une propre implémentation de MessageBox ou connaissez-vous la possibilité d'étendre la classe System.Windows.MessageBox
?
Serait-il possible d'appuyer sur la touche d'échappement «Oui» ou «Non»? :-) J'utiliserais Oui/Non/Annuler, où Non et Annuler sont la même chose. "Non ne pas supprimer" et "Annuler la suppression" (également acheminé via la touche d'échappement). –