powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Закрытие формы из UserControl
4 сообщений из 4, страница 1 из 1
Закрытие формы из UserControl
    #39911493
Fockewolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день, необходимо при инициализации пользовательского элемента управления осуществить некоторые проверки и по их результатам - закрыть форму, на которой размещен этот UserControl.

Какие пути решения есть?
На ум приходит только public property Parent - передавать туда форму.
...
Рейтинг: 0 / 0
Закрытие формы из UserControl
    #39911511
Colt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Fockewolf,
Мне кажется, что это несколько идеологически неправильно, чтобы контрол (какой бы он крутой не был) управлял вышестоящей формой (какой бы никчемной она не была).
Я бы предложил посмотреть следующее решение: в контрол добавить событие, которое он генерирует, если считает, что форма должна закрыться, а форма, подписанная на это событие, сама решает накрыться ей или, возможно, продолжать жить.

Насчет Parent: на всякий случай имей ввиду, что там может быть не обязательно форма. Если контрол расположен не просто на форме, а внутри какого-нибудь контейнера (например Panel), то ссылка будет именно на контейнер, т.е. чтобы получить форму, надо будет пройти по всей цепочке вложенности.
...
Рейтинг: 0 / 0
Закрытие формы из UserControl
    #39911514
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fockewolf,

самое очевидное - это должно быть событие, как написали выше

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

вот и свой UserControl наделите необходимыми вам событиями

менее очевидное - это посмотреть на уже существующие подходы, разобраться в них: MVP, MVVM
в том же WPF есть система команд и нечто подобное можно легко реализовать самому в WinForms
...
Рейтинг: 0 / 0
Закрытие формы из UserControl
    #39911540
Fockewolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, спасибо, реализую через событие
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Закрытие формы из UserControl
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]