void RunUILoad(ref IEnumerable <ViewModelBase> remainingVMs, ObservableCollection <ViewModelBase> targetCollection, object timerHandle)
        {
            _systemServices.StopTimer(timerHandle);
            int vmCount         = 0;
            int topLevelVMCount = 0;

            foreach (var vm in remainingVMs)
            {
                topLevelVMCount++;
                vmCount += CountVMChildren(vm);
                targetCollection.Add(vm);

                if (vmCount > 15)
                {
                    break;
                }
            }

            if (vmCount >= 15)
            {
                remainingVMs = remainingVMs.Skip(topLevelVMCount);
                _systemServices.RunAsync(async(obj) =>
                {
                    _systemServices.RestartTimer(timerHandle);
                });
            }
        }
 private void OnTick(object obj, object obj2)
 {
     if (_running == 0)
     {
         ProgressBarVisibility = false;
         _systemServices.StopTimer(obj);
     }
 }
 public void Dispose()
 {
     foreach (var timer in _timerHandles)
     {
         if (timer.IsAlive)
         {
             _systemServices.StopTimer(timer.Target);
         }
     }
 }