【发布时间】:2010-09-22 01:47:40
【问题描述】:
当编辑非常长的代码块时(无论如何都应该重构,但这超出了这个问题的范围),我经常渴望能够像折叠功能块一样折叠语句块。也就是说,如果减号图标出现在大括号中的所有内容的代码大纲上,那就太好了。它似乎出现在函数、类、区域、命名空间、使用中,但不适用于条件或迭代块。如果我能折叠 ifs、switches、foreaches 之类的东西,那就太棒了!
谷歌搜索了一下,我发现显然 VS 中的 C++ 大纲允许这样做,但 VS 中的 C# 大纲不允许。我真的不明白为什么。如果我选择 C# 格式,即使记事本++也会崩溃,所以我不明白为什么 Visual Studio 不这样做。
有谁知道可以启用此行为的 VS2008 插件吗?还是某种隐藏的设置?
编辑添加:插入区域当然是一个选项,它确实已经发生在我身上,但坦率地说,我不应该将东西包裹在已经包裹在大括号中的区域中......如果我要去要编辑现有代码,我只会重构它以更好地分离关注点。 (用新方法而不是区域“包装”;)
【问题讨论】:
-
顺便说一句:我发现这两个快捷键让我的生活变得非常轻松: 切换大纲:Ctrl + M,M 全部折叠:Ctrl + M,O
-
Ctrl + M, L 切换递归折叠/展开。当然,这会让你只剩下一行。在那一行里面,虽然 (Ctrl + M, M) 给你留下了一个很好的总结文件。
-
这是 VS 2012 的等效插件:stackoverflow.com/questions/18388280/…
-
相关:The Problem With Code Folding Jeff Atwood,2008 年
标签: c# visual-studio