У меня есть форма, которая откроет новую форму при нажатии одной кнопки (form1button). И на дочерней форме будет еще одна кнопка «form2button». Теперь, если я нажму эту кнопку form2, новая форма2 должна быть удалена. Но поскольку объект form2 создан здесь в методе класса form1, я не могу разместить этот объект в методе класса form2 (fom2buttonclick). Поэтому я использовал static для выполнения своей работы, как показано в следующем коде psuedo.
Form1:
class Form1 : Form
{
static Form2 f2;
public void Form1_buttonclick(object sender, EventArgs e)
{
f2 = new Form2();
}
public void Disposef2()
{
f2.Dispose();
}
}
Form2:
class Form2 : Form
{
public void Form2_buttonclick(object sender, EventArgs e)
{
Form1 f1 = new Form1();
f1.Disposef2();
}
}
Есть ли другой лучший способ сделать это? Или сама конструкция C # не предоставляет альтернативного механизма. Я новичок в C #. Пожалуйста, помогите мне ..
Редактировать
Я хочу закрыть (явным образом распоряжаться) объект form2, который создается в классе form1 при нажатии кнопки в form2. Это изменение для большей ясности.