/// <summary> /// перезагрузка дерева /// </summary> public void ReloadTree(int?ActiveNode_ID = null) { var fnd = new Dictionary <object, Stack>(); FreeHierarchyTypeTreeItem obj = null; Manager.User.ReloadFreeHierarchyTypes(Manager.UI.ShowMessage); LoadTypes(_currentRightFilter, new HashSet <long> { ActiveNode_ID ?? -101 }, _isDeclaratorMainTree); var allNodes = GlobalFreeHierarchyDictionary.GetTypes(_currentRightFilter); if (allNodes != null) { allNodes.TryGetValue(ActiveNode_ID ?? -101, out obj); } if (obj == null) { return; } //fnd[obj] = obj.GetParents(); ActiveTreeNode = obj; Dispatcher.BeginInvoke(DispatcherPriority.ApplicationIdle, new System.Action(delegate() { try { XamTreeFinder.ExpandAndSelectXamTree(fnd, obj, tree); } catch { //ошибки бывают.. } })); }