public static void ShowDialog(Form parent, Action action, string caption, string message, CancellationTokenSource cancelToken) { using (WaitDialog wait = new WaitDialog(parent, () => { action(); return(null); }, caption, message, cancelToken)) { wait.ShowDialog(); if (_exception != null) { throw new ApplicationException("", _exception); } } }
public static void ShowDialog <T>(Form parent, Func <T> action, string caption, string message, CancellationTokenSource cancelToken, out T result) { using (WaitDialog wait = new WaitDialog(parent, () => { return(action()); }, caption, message, cancelToken)) { wait.ShowDialog(); if (_exception != null) { throw new ApplicationException("", _exception); } result = (T)wait._result; } }