Вопрос:
Возможный дубликат:
Как избежать нескольких экземпляров формы Windows в С#
Я хочу показать открытую форму только один раз в приложении, не создавая их как форму MDI.
Лучший ответ:
Прежде чем открывать форму из вашего кода, проверьте свойство Application.OpenForms и посмотрите, существует ли форма в коллекции.
Что-то вроде:
if ((Application.OpenForms[«Form1»] as Form1) != null) { //Form is already open } else { // Form is not open } Ответ №1
Вы можете просто использовать методы showhide для открытия формы. Вы также должны инициализировать все поля формы после каждого раза, пока вы это показываете.
Ответ №2
Используйте логическую переменную со значением по умолчанию false, которое вы установили в true после отображения формы и проверите переменную при открытии формы.