Visual Studio 2003:启动时折叠所有项目

时间:2009-11-19 02:35:55

标签: visual-studio visual-studio-2003

我有大约150个项目的解决方案。当我打开解决方案时,其中一半似乎是随机打开的。我想打开所有项目崩溃的解决方案。我想打开解决方案后只打开我选择的那个。

我该怎么做?

3 个答案:

答案 0 :(得分:2)

我相信IDE会保持上次解决方案打开时的展开/折叠状态。手动过程是自己关闭它们。

或者从here开始。这将折叠所有项目并展开所选项目。

宏 这是一个用于折叠解决方案中所有项目并展开所选项目的宏:

1.在VS2005 IDE上选择ALT + F8以打开宏浏览器
2.右击MyMacros。
3.选择新模块 4.将新模块名称键入CollapseAll
5.选择确定 - 创建一个新模块CollapseAll 6.右键单击折叠所有模块
7.选择编辑 - 启动宏IDE 8.复制以下Sub并将其粘贴到模块和End模块之间。 - 在宏IDE中(您可能需要调整一些行以便成功编译宏):

Sub CollapseAll()
'NavigateSolution()
' Get the the Solution Explorer tree
Dim UIHSolutionExplorer As UIHierarchy
UIHSolutionExplorer = DTE.Windows.Item(Constants.vsext_wk_SProjectWindow).Object()
' Check if there is any open solution
If (UIHSolutionExplorer.UIHierarchyItems.Count = 0)
Then
Return
End If

' Get the top node (the name of the solution)
Dim UIHSolutionRootNode As UIHierarchyItem
Dim UIHChildItem As UIHierarchyItem
UIHSolutionRootNode = UIHSolutionExplorer.UIHierarchyItems.Item(1)

' Collapse each project node
Dim UIHItem As UIHierarchyItem
For Each UIHItem In UIHSolutionRootNode.UIHierarchyItems
For Each UIHChildItem In UIHItem.UIHierarchyItems
UIHChildItem.UIHierarchyItems.Expanded = False
Next
UIHItem.UIHierarchyItems.Expanded = False
Next
UIHSolutionRootNode.UIHierarchyItems.Expanded = True

Dim UIHSelectedItem As UIHierarchyItem = UIHSolutionExplorer.SelectedItems(0)
UIHSelectedItem.UIHierarchyItems.Expanded = True
End Sub

保存模块。 现在将此宏添加到工具栏以便于访问。

9.选择工具 - >从主菜单中自定义
10.在“自定义”对话框中选择“命令”选项卡 11.选择宏
12.选择CollapseAll宏并将其拖放到VS2005 IDE工具栏之一上。您将在工具栏上看到宏名称 -
13.不要关闭自定义弹出窗口 -
14.右键单击工具栏上的宏名称
15.选择默认样式 - 这将删除工具栏上的宏名称,从而在工具栏上生成一个小矩形
16.右键单击小矩形
17.选择ChangeButtonImage
18.选择其中一个图像,例如HourGlass。您将在工具栏上看到图像 19.关闭自定义弹出窗口
20.测试宏:
 1.选择解决方案中的一个项目
 2.在工具栏上选择CollapseAll按钮
 3.Observe解决方案资源管理器将全部折叠,并将展开您选择的项目。

答案 1 :(得分:1)

我知道这不适用于VS2003,但如果您在VS2010中寻找相同的解决方案,Sara Ford在博客中写了一篇关于这样做的插件:

http://blogs.msdn.com/b/saraford/archive/2010/05/13/collapse-selection-in-solution-explorer-extension-7.aspx

答案 2 :(得分:0)

我从事100多个项目的产品。我为每个子模块制作了sln文件(一些相关的vcproj / csproj),这样我就不用打开一个大的sln文件来查看项目了。

可能有一种方法可以将visual studio脚本打开,仅在折叠时打开,但我不知道如何。我通过将vcproj / csproj拆分为不同的sln并使用构建服务器来构建来避免这个问题。