private void SearchAndRemove(ObservableCollection<Achievement> list, Achievement toDelete)
 {
     foreach (Achievement a in list)
     {
         if (a == toDelete)
         {
             list.Remove(toDelete);
             return;
         }
         else
         {
             if (a.SubAchievements.Count > 0)
             {
                 SearchAndRemove(a.SubAchievements, toDelete);
             }
         }
     }
 }
        private void RefreshSubAchievements(Achievement achievement)
        {
            achievement.RefreshPercentageDouble();

            foreach (Achievement a in achievement.SubAchievements)
            {
                RefreshSubAchievements(a);
            }
        }