public void DoCalcTree() { TotalAttachments = null; CallbackDelegate callback = new CallbackDelegate(UpdateStatus); Progress.Max = 100 * RootFolder.Count(x => x.IsSelected == true); Progress.JobStatus = JobStatus.inProgress; TestWrapper tstWrp = new TestWrapper(teamExplorer); for (int i = 0; i < RootFolder.Count; i++) { TeamProjectAttachemntInfo fld = RootFolder[i]; if (fld.IsSelected) { fld.ClearSizes(); UpdateStatus(i * 100, fld.TeamProjectName); tstWrp.CalcSize(ref fld, "{0:yy-MM}"); fld.IsSelected = fld.Size > 0 ? true : false; } } Progress.CurrentOperation = "Calculating Totals"; TeamProjectAttachemntInfo tpaTotal = new TeamProjectAttachemntInfo(); tpaTotal.CalcTotal(RootFolder); TotalAttachments = tpaTotal; Progress.JobStatus = JobStatus.notStarted; }