Files
CodeSnippets/csharp.cs
2024-07-19 08:34:19 -05:00

11 lines
439 B
C#

// Threading in C# - Invoking Methods (if required)
public static void InvokeIfRequired(this Control c, Action a) {
if (c.InvokeRequired) {
c.Invoke(new MethodInvoker(() => { InvokeIfRequired(c, a); }));
return;
}
try {
if (!c.IsHandleCreated) { IntPtr i = c.Handle; } // See links above - handle is not created, will cause cross-thread exceptions
a.Invoke();
} catch (Exception ex) { }
}