Но тогда ваше поле должно быть Компонентом (реализовать интерфейс IComponent или что-то подобное).
Разве это не будет немного излишним?
Может быть, вы можете присоединить обработчик событий к событию Disposing и разместить свои поля в этом обработчике событий?
(Или просто добавьте их в метод Dispose - я не думаю, что это будет проблемой, поскольку afaik код в методе Dispose не восстанавливается ...
В идеале реализация метода Dispose не должна быть в классе * .designer.cs ...).