public void Populate(params TimerSequenceItem[] items)
 {
     Items = new SelectionList<TimerSequenceItem>();
     Items.AddRange(items);
     Timer = new ActionTimer(Items[0].Time, () =>
     {
         if (Items.IsNextAvailable())
         {
             Items.Next();
             Timer.TimeLimit = Items.CurrentValue.Time;
             Timer.Reset();
             Timer.Start();
         }
         else
         {
             if (FinishedCallback != null)
             {
                 FinishedCallback();
                 return;
             }
         }
         Items.CurrentValue.Callback();
     });
 }