Nand Kishor Upadhyay Ответов: 2

Закройте вторую форму из первой формы в C#


Здравствуйте, сэр/мама

Я создал 2 формы в c#.

Я хочу закрыть 2-ю форму (не существующую) из 1-й формы в c#.

Приведенный ниже код не работает.

2nd_form 2n = новая 2nd_form();
2Н.рядом();

Пожалуйста помочь.

Что я уже пробовал:

Below code is not working.

2nd_form 2n = new 2nd_form();
2n.close();

Please help.

2 Ответов

Рейтинг:
2

RickZeeland

Вы должны сначала показать форму, прежде чем ее можно будет закрыть.
Вы можете попробовать это:

2nd_form 2n = new 2nd_form();
2n.Show();
// Your code here e.g. Thread.Sleep(5000)
// or put a breakpoint on the next line
2n.Close();


Рейтинг:
12

OriginalGriff

Это не может работать: вы закрываете экземпляр формы, которую только что создали - вот что new означает!

Подумайте об этом так: Если вы положите телефон в бардачок своей машины, а затем купите новую машину, ожидаете ли вы, что откроете новый бардачок и найдете там свой телефон? Конечно, нет - бардачок является частью старого экземпляра автомобиля, и он полностью отделен от нового автомобиля.

Чтобы закрыть версию, на которую смотрит пользователь, вам нужно найти ее - это означает, что вы смотрите на свой код, где вы показываете форму, и разрабатываете, где вы сохранили экземпляр.