I have noticed that if I change a visible property of a control, such as label1.Text, from another thread that did not create the control, Visual Studio will throw an invalid cr