Нужно в проге написать дилоговое окно которое бы на выходе из прогораммы спрашивала уверен ли я что хочу выйти если данные не сохранены. На данный момент есть следующее:
System::Void MainForm_FormClosing(System::Object^ sender, System::Windows::Forms::FormClosingEventArgs^ e)
{
if(ToolStripStatusLabelState->Text == "Data is not saved. Working...")
{
confirmExitDialog->ShowDialog();
if(confirmExitDialog->DialogResult == System::Windows::Forms::DialogResult::OK)
{
SaveContacts();
}
if(confirmExitDialog->DialogResult == System::Windows::Forms::DialogResult::Ignore);
if(confirmExitDialog->DialogResult == System::Windows::Forms::DialogResult::Cancel)
{
//Должно быть что-то типа Application::ContinueRunning(this);
}
}
}
}
Естественно такого метода Application::ContinueRunning(this); в дотнете нет. Нужно как-то это реализовать, подскажите как. Возможно нужно обрабатывать другое событие...
Здравствуйте, artyanykey, Вы писали:
A>Нужно в проге написать дилоговое окно которое бы на выходе из прогораммы спрашивала уверен ли я что хочу выйти если данные не сохранены. На данный момент есть следующее:
A>A>System::Void MainForm_FormClosing(System::Object^ sender, System::Windows::Forms::FormClosingEventArgs^ e)
A>
Событие Form.FormClosing принимает параметр типа CancelEventHandler (FormClosingEventHandler его наследник). Если вы хотите продолжить работу, то надо свойство CancelEventHandler.Cancel установить в false
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
System::Void MainForm_FormClosing(System::Object^ sender, System::Windows::Forms::FormClosingEventArgs^ e)
{
if(ToolStripStatusLabelState->Text == "Data is not saved. Working...")
{
switch(confirmExitDialog->ShowDialog())
{
case System::Windows::Forms::DialogResult::OK:
{
SaveContacts();
break;
}
case System::Windows::Forms::DialogResult::Ignore:
break;
case System::Windows::Forms::DialogResult::Cancel:
{
e->Cancel = true;
break;
}
}
}
}