Exemple #1
0
 public static void InvokeIfRequired <T>(this T obj, InvokeIfRequiredDelegate <T> action) where T : ISynchronizeInvoke
 {
     if (obj.InvokeRequired)
     {
         obj.Invoke(action, new object[] { obj });
     }
     else
     {
         action(obj);
     }
 }
Exemple #2
0
 /// <summary>
 /// An Extension method to execute the given action in Thread Safe Mode
 /// </summary>
 /// <param name="control">The control to be used for Invoking Method</param>
 /// <param name="action">The action to execute</param>
 /// <typeparam name="T"></typeparam>
 public static void InvokeIfRequired <T>(this T control, InvokeIfRequiredDelegate <T> action)
     where T : ISynchronizeInvoke
 {
     if (control.InvokeRequired)
     {
         control.Invoke(action, new object[] { control });
     }
     else
     {
         action(control);
     }
 }