public void DoCalcTree()
        {
            CallbackDelegate callback = new CallbackDelegate(UpdateStatus);

            SCWrapper       scWrp       = new SCWrapper(vm.teamExplorer);
            List <SCFolder> selectedFld = vm.RootFolder.Folders[0].Folders.FindAll(delegate(SCFolder f) { return(f.IsSelected); });

            for (int i = 0; i < selectedFld.Count; i++)
            {
                SCFolder fld = selectedFld[i];
                Dispatcher.Invoke(callback, System.Windows.Threading.DispatcherPriority.Background, new object[] { i * 100, fld.FolderPath });

                scWrp.CalcSize(ref fld);
                fld.SetInclusiveSize();
            }

            vm.RootFolder.Folders[0].SetInclusiveSize();
            Dispatcher.Invoke(callback, System.Windows.Threading.DispatcherPriority.Background, new object[] { 100 * selectedFld.Count, "Done" });
        }