Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

YesNo MessageBox not closing when x-button clicked

When I open a MessageBox with options YesNo, the (usually) cancelling cross in the upper right is shown but has no effect.

System.Windows.MessageBox.Show("Really, really?", "Are you sure?", MessageBoxButton.YesNo);

If I offer YesNoCancel as options, clicking the cross closes the Dialog with DialogResult Cancel.

System.Windows.MessageBox.Show("Really, really?", "Are you sure?", MessageBoxButton.YesNoCancel);

I would have expected that the cross is "looking disabled" if not hidden at all, when clicking it has no effect. Probably I am not the first one observing this. What is your favorite way to hide/disable this button or workaround the issue?

Note: I would prefer a solution that does not use System.Windows.Forms, since I am dealing with WPF projects and would like to avoid any InterOp if possible.

like image 876
Simon D. Avatar asked Dec 05 '22 04:12

Simon D.


1 Answers

The Close button (in MsgBox's title bar): Since the MsgBox window is a built-in feature of the operating system, its X button is enabled only when certain buttons are present. If there is only an OK button, clicking the X button is the same as pressing OK. Otherwise, the X button is disabled unless there is a Cancel button, in which case clicking the X is the same as pressing Cancel.

http://www.autohotkey.com/docs/commands/MsgBox.htm

Its the default behavior! from the time it was MsgBox to the time its MessageBox!

like image 144
ioWint Avatar answered Dec 11 '22 07:12

ioWint