WPF
Если вы используете WPF MessageBox.Show()
возвращает MessageBoxResult
:
MessageBoxResult result = MessageBox.Show("asd", "xcvxcv", MessageBoxButton.OKCancel);
if (result == MessageBoxResult.OK)
MessageBox.Show("Ok was selected");
Windows Forms
Если вы используете Windows Forms MessageBox.Show()
возвращает DialogResult
:
DialogResult result = MessageBox.Show("test", "bla bla", MessageBoxButtons.OKCancel);
if (result == DialogResult.OK)
MessageBox.Show("Ok was selected");
Может возникнуть проблема с конструктором
Я не эксперт WPF, но может быть другая проблема: ваш пример кода показывает, что вы открываете MessageBox
в своем конструкторе. Это может быть проблемой при двойном отображении формы или в случае сбоя кода, который обрабатывает ваш выбор.
Подумайте о переносе этого события, когда ваша форма загружена:
public MainWindow()
{
InitializeComponent();
this.IsEnabled = false;
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
MessageBoxResult result = MessageBox.Show("asd", "xcvxcv", MessageBoxButton.OKCancel);
if (result == MessageBoxResult.OK)
MessageBox.Show("Ok was selected");
this.IsEnabled = true;
}