public void RunClock() { _display.Clear(); ConfigureButton(_button1, 18); ConfigureButton(_button2, 25); while (true) { var now = DateTime.Now.TimeOfDay; if (Clock1 != null) { Clock1.PopulateFromUtc(now); DisplayClock(0, Clock1); } if (Clock2 != null) { Clock2.PopulateFromUtc(now); DisplayClock(1, Clock2); } Thread.Sleep(100); } }
public void ProcessClockRefTimeChange(object sender, PropertyChangedEventArgs e) { if (_refTimeUpdInProgress) { return; } _refTimeUpdInProgress = true; var senderClock = (ClockInfo)sender; ThisPc.UpdateRefTime(TimeZoneInfo.ConvertTime(senderClock.RefTime, senderClock.TimeZoneInfo, ThisPc.TimeZoneInfo)); Clock1.UpdateRefTime(TimeZoneInfo.ConvertTime(ThisPc.RefTime, ThisPc.TimeZoneInfo, Clock1.TimeZoneInfo)); Clock2.UpdateRefTime(TimeZoneInfo.ConvertTime(ThisPc.RefTime, ThisPc.TimeZoneInfo, Clock2.TimeZoneInfo)); Clock3.UpdateRefTime(TimeZoneInfo.ConvertTime(ThisPc.RefTime, ThisPc.TimeZoneInfo, Clock3.TimeZoneInfo)); Clock4.UpdateRefTime(TimeZoneInfo.ConvertTime(ThisPc.RefTime, ThisPc.TimeZoneInfo, Clock4.TimeZoneInfo)); Clock5.UpdateRefTime(TimeZoneInfo.ConvertTime(ThisPc.RefTime, ThisPc.TimeZoneInfo, Clock5.TimeZoneInfo)); Clock6.UpdateRefTime(TimeZoneInfo.ConvertTime(ThisPc.RefTime, ThisPc.TimeZoneInfo, Clock6.TimeZoneInfo)); Clock7.UpdateRefTime(TimeZoneInfo.ConvertTime(ThisPc.RefTime, ThisPc.TimeZoneInfo, Clock7.TimeZoneInfo)); Clock8.UpdateRefTime(TimeZoneInfo.ConvertTime(ThisPc.RefTime, ThisPc.TimeZoneInfo, Clock8.TimeZoneInfo)); Clock9.UpdateRefTime(TimeZoneInfo.ConvertTime(ThisPc.RefTime, ThisPc.TimeZoneInfo, Clock9.TimeZoneInfo)); OnRefTimeUpdated?.Invoke(this, new EventArgs()); _refTimeUpdInProgress = false; }