When I call Dispose()
on a System.Windows.Forms.Control
, does it automatically remove all event registrations?
So for example, is the following sufficient:
var button = new Button();
button.Click += someObject.clickHandler;
// ...
button.Dispose();
Or do I need to unregister the event handler explicitly, like this:
var button = new Button();
button.Click += someObject.clickHandler;
// ...
button.Click -= someObject.clickHandler;
button.Dispose();