Any time a control redraws everything is drawn starting from nothing, so refreshing the control will also reset anything you have drawn to a 'hijacked' device context.
You should not draw to a control outside the paint event handler, because whenever the controls repaints what you put there will be lost, without you being able to maintain it.