2011-01-17 4 views
1

В C# .NET 2.0 свойство Application.OpenForms возвращает только видимые формы. Как получить все формы в приложении, включая скрытые формы. Благодарю.Получить все формы в приложении, включая скрытые формы

Примечания: C# .NET 2.0, Windows Form.

+0

Вы должны спросить себя, почему у вас есть скрытые формы в вашем приложении. – leppie

ответ

3

По-видимому, согласно одному из сообщений here, в Windows Forms есть ошибка, которая делает формы несогласными с коллекцией Application.OpenForms. Предлагаемое решение (одним из модераторов MVP) заключается в том, чтобы не использовать Application.OpenForms, но вместо этого использовать событие для уведомления скрытой формы, что-то интересное.

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

+0

Это не так много «обходного пути» *, поскольку это лучшая практика. –

Смежные вопросы