static void action_Completed() { if (IAction.NextAction()) { IAction action = IAction.GetNext(); Console.WriteLine(action.action); action.Completed += action_Completed; action.Start(); } else { Console.WriteLine("Update Complete!"); done = true; } }
public void action_Completed() { if (this.InvokeRequired) { BeginInvoke((MethodInvoker) delegate { action_Completed(); }); return; } Thread.Sleep(500); current.Completed -= action_Completed; current.OnProgress -= action_progress; ChangeProgress(0); if (IAction.NextAction()) { NextAction(); } else { ChangeProgress(100); ChangeLable("Done!"); } }