public CompetitionPage() { InitializeComponent(); time = new Time(3, 0, 0); TimerFun timerFun = Countdown; bool startOvertime = false; timer = new DispatcherTimer(); timer.Interval = TimeSpan.FromSeconds(1); timer.Tick += (s, e) => { timerFun(ref time); if (overtime != 0 && time == 0) { startOvertime = true; timerFun = PositiveTiming; } else if (!startOvertime && time == 0) { timer.Stop(); } else if (startOvertime && time.Minute == overtime) { timer.Stop(); } if (endTime == DateTime.Now) { Data.AddAppLog($"Time: {time.Hour}-{time.Minute}-{time.Second} .Deviation: {time.Hour*3600+time.Minute*60+time.Second} s"); } }; }
public Timer_Frequency(int Fre, TimerFun callBack, Component mo, string tagName = null) { mDelayValue = Fre; mDelayFrequen = Fre; mFunBack = callBack; SetNextTime(0); SetBody(mo, tagName); isFun = true; }
public static Timer_Frequency SetTimerEx(TimerFun fun, int fre, Component mo = null) { return(TimerController.SetTimer(new Timer_Frequency(fre, fun, mo))); }