/// <summary>
 /// Will perform managed invoke if needed, or a direct one if not.
 /// </summary>
 public static void DirectOrManagedInvoke(Control invocationControl, GeneralHelper.DefaultDelegate d)
 {
     if (invocationControl.InvokeRequired)
     {
         BeginManagedInvoke(invocationControl, d);
     }
     else
     {
         d.Invoke();
     }
 }