Чтобы код заработал, выставьте значение True в параметре KeyPreview формы у которой отключаете сочетании клавиш.
Вот и реализация данной задумки.
1) Вы проверяете все сочетания клавиш в форме, если наше сочетание обнаружено то altF4 выставляем в true.
2) При закрытии проверяем altF4,было ли сочетание клавиш. после чего вызываем отмену всех действий с помощью «e.Cancel = true;».
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (altF4)
{
if (e.CloseReason == CloseReason.UserClosing)
e.Cancel = true;
altF4 = false;
}
}
private bool altF4 = false;
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.Alt && e.KeyCode == Keys.F4)
{
MessageBox.Show("");
altF4 = true;
}
}
0.00 (0%) 0 votes










