/// <summary> /// Sets the WMP player's visibility in a thread-safe way. /// </summary> /// <param name="visible">Whether the player is visible</param> public void setPlayerVisibility(bool visible) { if (player.InvokeRequired) //wrong thread { playerVisibilityCallback d = new playerVisibilityCallback(setPlayerVisibility); player.Invoke(d, new object[] { visible }); } else //right thread { player.Visible = visible; } }