Если вы используете WPF, MessageBox.Show()
возвращает MessageBoxResult
:
MessageBoxResult result = MessageBox.Show("asd", "xcvxcv", MessageBoxButton.OKCancel);
if (result == MessageBoxResult.OK)
MessageBox.Show("Ok was selected");
Если вы используете 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;
}
@CassioTDSTheDiamondSword это не работает, потому что это игра в догадки о том, что вы хотите, пожалуйста, обновите вопрос, указав более подробную информацию, код, который вы пробовали, и то, чего вы намереваетесь достичь (до его закрытия)
Первая строка DialogResult подчеркнута красным
@CassioTDSTheDiamondSword, что это за приложение? винформы? впф? сеть? какие? Например, есть 2 разных метода MessageBox.Show
, в зависимости от того, какую структуру пользовательского интерфейса вы используете; MessageBoxResult
работает вместо DialogResult
?
Разместите свой код. Разместите все «использование xxx» в своем файле. Подчеркивание красным цветом должно показать вам сообщение об ошибке в вашем «Списке ошибок» при попытке создать решение. Опубликовать эту информацию на ваш вопрос
@kara note OP теперь отредактировал «WPF» в вопросе - не ваша вина (ответ предшествует редактированию), но вы можете обновить, чтобы заметить это (я полагаю, что это ответ winforms); Я думать, что просто означает замену DialogResult
на MessageBoxResult
и MessageBoxButtons
на MessageBoxButton
(без "s")
@MarcGravell Опубликуйте это как автор;)
@MarcGravell Спасибо. Дополнил ли мой пост примером кода для WPF и WinForms
Это работает по назначению. Какая проблема у вас с этим? Вы должны опубликовать код, чтобы прояснить вашу проблему.