Пользовательское удаление в разработанной форме или пользовательском элементе управления

#c# #winforms

#c# #winforms

Вопрос:

Я создал пользовательский пользовательский элемент управления WinForms и хотел бы переопределить Dispose. Однако код, сгенерированный разработанным, уже содержит метод Dispose. Как я могу добавить пользовательский код очистки в свой компонент?

Ответ №1:

Вы можете переместить метод Dispose из файла, сгенерированного кодом, в ваш файл control cs. Я использовал это в .net 2.0, оно должно работать и в 4.0.

Ответ №2:

Это плохо документировано, но вы можете вырезать и вставить метод Dispose на свою сторону частичного класса.
А затем расширьте его.

Ответ №3:

Я только что понял, что метод Dispose в x.Designer.cs находится за пределами области «Сгенерированный дизайнером компонентов код». Таким образом, простое перемещение метода Dispose в мой обычный «исходный код» решает мою проблему.

Ответ №4:

В зависимости от того, какими ресурсами вы хотите распоряжаться, вы также можете использовать финализатор (деструктор) для достижения этой цели.

Комментарии:

1. Плохое предложение. Здесь вам не нужен финализатор, а затем он вам не нужен.