Как я могу сказать форме не распоряжаться определенным элементом управления, когда он закрывается? - PullRequest
2 голосов
/ 09 марта 2012

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

У меня возникли проблемы с предотвращением удаления элемента управления.Я подумал, что удаления его из коллекции элементов управления с помощью this.Controls.Remove (someControl) будет достаточно, чтобы остановить его удаление, но он по-прежнему удаляется!

Что еще мне нужно сделать, чтобы форма неизбавиться от моего элемента управления?

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

Спасибо!

Ответы [ 2 ]

6 голосов
/ 09 марта 2012

Установите для свойства Parent дочернего элемента управления значение null перед удалением родительского объекта.

2 голосов
/ 09 марта 2012

Почему вы пытаетесь не допустить его утилизации?Если вы больше не ссылаетесь на него, он будет удален.Таким образом, если вы сохраните ссылку на него в своем коде, этого должно быть достаточно, чтобы не допустить его утилизации, поскольку вы показываете, что собираетесь использовать его снова в будущем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...