private void ToggleLibraryItem(LibraryItemViewModel libraryItem, ExpansionFlag expansion) { bool expanded = expansion == ExpansionFlag.DeepExpanded; foreach (LibraryItemViewModel item in libraryItem.Children) { item.IsExpanded = expanded; if (item.Children.Count > 0) { ToggleLibraryItem(item, expansion); } if (expanded) // expand overloaded method { ExpandChildItem(item); } } }
private void ToggleLibrary(bool expand) { if (false != expand) { if (currentExpansion == ExpansionFlag.Collapsed) { currentExpansion = ExpansionFlag.ShallowExpanded; } else if (currentExpansion == ExpansionFlag.ShallowExpanded) { currentExpansion = ExpansionFlag.DeepExpanded; } else { return; } } else { int level = GetExpansionLevel(); if (level > 2)//(currentExpansion == ExpansionFlag.DeepExpanded) { currentExpansion = ExpansionFlag.ShallowExpanded; } else //if (currentExpansion == ExpansionFlag.ShallowExpanded) { currentExpansion = ExpansionFlag.Collapsed; } //else // return; } foreach (LibraryItemViewModel item in libraryTree.RootItems) { item.IsExpanded = currentExpansion != ExpansionFlag.Collapsed; if (item.Children.Count > 0) { ToggleLibraryItem(item, currentExpansion); } if (item.IsExpanded) // expand overloaded method { ExpandChildItem(item); } } }