2015-04-08 4 views
-2

У меня есть следующие строки кода:закрытия формы - MessageBoxButtons «Отменить» закрыть приложение

private void Form1_FormClosing(object sender, FormClosingEventArgs e) 
{ 
    if (MessageBox.Show("Message?", "Message", MessageBoxButtons.OKCancel) == DialogResult.OK) 
    { 
    } 
} 

Дело: когда пользователь нажимает «Ok», приложение закрывается. Если пользователь нажмет «Отменить», результат будет таким же: приложение закрывается, и я не хочу этого. Может ли кто-нибудь понять, что мне не хватает?

+0

где у вас есть код для закрытия? это просто показывает нам, что вы знаете, как поставить код по кнопке ok – maam27

+0

находится на главной форме, на вкладке «События» –

ответ

3

отменить закрытие через FormClosingEventArgs собственности Cancel

private void Form1_FormClosing(object sender, FormClosingEventArgs e) 
{ 
    if (MessageBox.Show("Message?", "Message", MessageBoxButtons.OKCancel) != DialogResult.OK) 
     e.Cancel = true; 
} 
1

Если вы хотите, чтобы избежать формы, чтобы закрыть в этом обработки события, необходимо установить FormClosingEventArgs. Просто установите e.Cancel = true; в том случае, если вы не хотите, чтобы форма закрывалась, например. в вашем if-блоке.

Смежные вопросы