You must call the appropriate Dispose() method for the controls.
You can use the extension method for this, see this answer from Hans Passant.
One of the controls that can be loaded into the RHS contains a timer to update its data every few seconds.
You may now have a race condition. The timer can be called by a callback when you call the Clear() extension method that has not yet been created. If the timer callback function could potentially lead to data corruption in your application, you will need to do something like this.
Timer.Stop(); Timer.Tick -= Timer_Tick(TimerCallback); Timer.Dispose();
Now another question: is it possible for you to hide these controls? Is there a restriction that prevents you from doing this?
source share