private void ProgressChanged(object sender, ProgressTaskChangeArgs args)
 {
     if (!IsLoading && args.NewValue > 0.0f && args.NewValue < 1.0f)
     {
         IsLoading = true;
         LoadStarted?.Invoke(this);
     }
 }
 private void ProgressCompleted(object sender, ProgressTaskChangeArgs args)
 {
     if (IsLoading)
     {
         IsLoading = false;
         LoadCompleted?.Invoke(this);
     }
 }
 /// <summary>
 /// Clean up a inner task registration.
 /// </summary>
 private void InnerCompleted(object sender, ProgressTaskChangeArgs args)
 {
     UnregisterInner((ProgressStatus)sender);
     StartUpdates();
 }
 /// <summary>
 /// Update a task's progress
 /// </summary>
 private void InnerProgress(object sender, ProgressTaskChangeArgs args)
 {
     StartUpdates();
 }