Windows Forms MDI, как удалить все формы, когда имеется всего одна?
Моя программа переделывает изображения в цвета RGB
Я хочу, чтобы при нажатии на элемент "Удалить формы", удалялась и форма ("Исходное изображение"), которая еще не была переделана в цвета RGB. Сейчас же при нажатии на удалить форму, вызывается исключение, так как программа пытается удалить еще не существующие формы, которые не переделаны в RGB.
Код в котором вызывается исключение:
private void удалитьФормыToolStripMenuItem_Click(object sender, EventArgs e)
{
ClearForms();
}
private void ClearForms()
{
if (izobr == null)
{
MessageBox.Show("Вставьте изображение", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
Form1 okno1 = (Form1)this.ActiveMdiChild;
okno1.Dispose();
Form1 okno2 = (Form1)this.ActiveMdiChild;
okno2.Dispose();
Form1 okno3 = (Form1)this.ActiveMdiChild;
okno3.Dispose();
Form1 okno4 = (Form1)this.ActiveMdiChild;
okno4.Dispose();
path = null;
izobr = null;
}
}
Я понимаю, что надо сделать где-то конструкцию if..else, но я не понимаю, какая переменная отвечает за то что MDI окно открыто или нет
Сам проект: https://disk.yandex.ru/d/mBOOKhsAavnUeg
