Есть ли способ рекурсивного свертывания папок в обозревателе решений Visual Web Developer 2010 Express? - PullRequest
2 голосов
/ 22 июня 2011

Это то, что я хочу делать довольно часто, так как я получаю сотни исходных файлов, видимых в обозревателе решений, и все может запутаться.

Я нашел несколько расширений, которые будут делать это в VisualStudio, но поскольку Visual Web Developer 2010 Express не поддерживает расширения, я ищу альтернативное решение.

Любые предложения с благодарностью приняты!

Редактировать: На случайиз заголовка вопроса было непонятно, я хочу свернуть папки рекурсивно , а не просто скрыть развернутое поддерево и показать его в том же состоянии при повторном открытии родительской папки.

Ответы [ 3 ]

0 голосов
/ 31 августа 2011

этот макрос помогает?

http://kylefinley.net/archive/2006/02/02/37.aspx

Imports EnvDTE
Imports System.Diagnostics

Public Module Personal

Sub CollapseAll()

'DESCRIPTION: Collapse all the nodes in the project tree

' Get the the Solution Explorer tree
Dim oSolutionExplorer As UIHierarchy
oSolutionExplorer = DTE.Windows.Item(Constants.vsext_wk_SProjectWindow).Object()

' Check if there is any open solution
If (oSolutionExplorer.UIHierarchyItems.Count = 0) Then
Return
End If

' Get the top node (the name of the solution)
Dim oRootItem As UIHierarchyItem
oRootItem = oSolutionExplorer.UIHierarchyItems.Item(1)
Dim oChildItem As UIHierarchyItem

' Collapse each project node
For Each oChildItem In oRootItem.UIHierarchyItems
CollapseMe(oChildItem, oSolutionExplorer)
Next

' 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.
oRootItem.Select(vsUISelectionType.vsUISelectionTypeSelect)

End Sub


Sub CollapseMe(ByVal oRootItem As UIHierarchyItem, ByVal oSolutionExplorer As UIHierarchy)

Dim oChildItem As UIHierarchyItem

For Each oChildItem In oRootItem.UIHierarchyItems
CollapseMe(oChildItem, oSolutionExplorer)
Next

oRootItem.UIHierarchyItems.Expanded = False 

' Added to deal with the Visual Studio bug
If (oRootItem.UIHierarchyItems.Expanded = True) Then
oRootItem.Select(vsUISelectionType.vsUISelectionTypeSelect)
oSolutionExplorer.DoDefaultAction()
End If

End Sub

End Module
0 голосов
/ 02 декабря 2011

Хорошо, через пять месяцев я предполагаю, что просто нет способа сделать это.Пометка как ответ.

0 голосов
/ 22 июня 2011

Если дважды щелкнуть папку, эта папка будет свернута, но не папки внутри той, которую вы щелкнули. Я думаю, что вам может не понадобиться, поскольку вы не видите эти папки внутри той, на которую вы нажали, поскольку они скрыты внутри свернутой папки.

...