WinForms C# Событие закрывания формы ShowDialog()

Если открывать новую форму в главной форме через Show(), то при его закрывании сработает событие Closed(). А вот когда открываю новую форму методом ShowDialog(), то событие Closed() не срабатывает. Есть ли какое нибудь событие при закрывании формы открытой с помощью метода ShowDialog()?


Ответы (1 шт):

Автор решения: Alex F

Visual Studio 2015, C# Windows Forms application project:

namespace test1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            new Form2().ShowDialog();
        }
    }
}

namespace test1
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }

        private void Form2_FormClosing(object sender, FormClosingEventArgs e)
        {
            MessageBox.Show("OK");
        }
    }
}

OK

Работает. Вопрос, что вы сделали в вашем проекте, что оно не работает. Попробуйте сделать тест в новом проекте.

→ Ссылка