Try checking the IsDisposed property before accessing the control. You can also check it on the FormClosing event, assuming you’re using the FormClosed event.
We do stop the Timer on the
FormClosing event and we do check the
IsDisposed property on the schedule
component before using it in the Timer
Tick event but it doesn’t help.
Calling GC.Collect before checking IsDisposed may help, but be careful with this. Read this article by Rico Mariani “When to call GC.Collect()”.