I sometimes get fed up up having to go through clicking solution folders to collapse everything to went on the hunt for a macro and came across this script by Scott Kuhl.
Sub CollapseAll()
' Get the the Solution Explorer tree
Dim solutionExplorer As UIHierarchy
solutionExplorer = DTE.Windows.Item(Constants.vsext_wk_SProjectWindow).Object()
' Check if there is any open solution
If (solutionExplorer.UIHierarchyItems.Count = 0) Then
Return
End If
' Get the top node (the name of the solution)
Dim rootNode As UIHierarchyItem = solutionExplorer.UIHierarchyItems.Item(1)
rootNode.DTE.SuppressUI = True
' Collapse each project node
Collapse(rootNode, solutionExplorer)
' Select the solution node, or else when you click
' on the solution window
' scrollbar, it will synchronize the open document
' with the tree and pop
' out the corresponding node which is probably not what you want.
rootNode.Select(vsUISelectionType.vsUISelectionTypeSelect)
rootNode.DTE.SuppressUI = False
End Sub
Private Sub Collapse(ByVal item As UIHierarchyItem, ByRef solutionExplorer As UIHierarchy)
For Each innerItem As UIHierarchyItem In item.UIHierarchyItems
If innerItem.UIHierarchyItems.Count > 0 Then
' Re-cursive call
Collapse(innerItem, solutionExplorer)
' Collapse
If innerItem.UIHierarchyItems.Expanded Then
innerItem.UIHierarchyItems.Expanded = False
If innerItem.UIHierarchyItems.Expanded = True Then
' Bug in VS 2005
innerItem.Select(vsUISelectionType.vsUISelectionTypeSelect)
solutionExplorer.DoDefaultAction()
End If
End If
End If
Next
End Sub
Simply add a new Macro to visual Studio then paste in the code.
It can be run directly from the MyMacros window or if it is something you use a lot assign a shortcut key to it by doing the follwing:
Tools|Customize|Commands|Press the Keyboard Button|type the namespace path to the new macro and assign the key sequence. Voila.
Here is the link to the blog i got the script from.
Scott Kuhl's Blog
Showing posts with label Development Performance. Show all posts
Showing posts with label Development Performance. Show all posts
Wednesday, 28 November 2007
Collapsing all items in the Solution Explorer in Visual Studio
Posted by
Omen
at
12:12
2
comments
Labels: Development Performance, Visual Studio IDE

Subscribe to:
Posts (Atom)