如何:显示代码大纲和隐藏代码

更新:2007 年 11 月

默认情况下,所有文本都会显示在代码编辑器中,但您可以选择在视图中隐藏某些代码。代码编辑器允许您选择一个代码区域并将其设置为可折叠的,以便该代码区域显示在一个加号 (+) 下。

折叠后的代码

请单击该符号旁边的加号 (+) 以展开或隐藏该区域。以大纲方式显示的代码并没有被删除,只是在视图中隐藏起来而已。

折叠前的代码

“编辑”菜单上的“撤消”和“重复”命令可影响这些操作。换句话说,如果您创建了一个可折叠区域,则可以选择“撤消”来撤消该操作。另外,“复制”、“剪切”、“粘贴”和拖放操作保留大纲显示信息,但不保留可折叠区域的状态。例如,当您复制折叠的区域时,“粘贴”操作将复制的文本粘贴为展开的区域。

以大纲方式显示代码后,您可以展开要处理的部分,完成后折叠它们,然后移动到其他部分。在大纲显示状态下,可使用“停止大纲显示”命令移除大纲信息而不会影响基础代码。

警告:

如果使该区域失效,则以大纲方式显示的区域将丢失。例如,删除或“查找和替换”操作将清除区域末尾的内容。

在“编辑”菜单的“大纲显示”子菜单和代码编辑器快捷菜单中,下列命令可用:

说明:

显示的对话框和菜单命令可能会与“帮助”中的描述不同,具体取决于您的当前设置或版本。若要更改设置,请在“工具”菜单上选择“导入和导出设置”。有关更多信息,请参见 Visual Studio 设置

命令

定义

隐藏选定内容

折叠当前选定的文本。必须选定文本才能执行此命令。快捷键为先按 Ctrl+M,再按 Ctrl+H。

说明:

当关闭“自动大纲显示”或选择“停止大纲显示”后,可以在 Visual C# 中使用此命令。在 Visual Basic 中不可用。

切换大纲显示展开

当您处于一个嵌套的折叠部分时,此命令会反转光标所在的最内层大纲显示部分当前的隐藏或展开状态。快捷键为先按 Ctrl+M,再按 Ctrl+M。

切换所有大纲显示

将所有过程设置为相同的隐藏或展开状态。如果一些区域展开而另一些区域隐藏,则隐藏的区域也将展开。快捷键为先按 Ctrl+M,再按 Ctrl+L。

停止大纲显示

移除整个文档中所有的大纲显示信息。所有的区域都是可见的而且符号被移除,但是基础代码不受影响。快捷键为先按 Ctrl+M,再按 Ctrl+P。

启动自动大纲显示

只有当“自动大纲显示”关闭时此命令才可用。使用此命令在 IDE 中启用“自动大纲显示”。

停止隐藏当前区域

移除当前选定的用户定义区域的大纲显示信息。快捷键为先按 Ctrl+M,再按 Ctrl+U。

注意:当关闭“自动大纲显示”或选择“停止大纲显示”后,可以在 Visual C# 中使用此命令。在 Visual Basic 中不可用。

折叠到定义

折叠所有类型的成员,以便能够清楚地查看属于某个类型的所有成员。除了环境自动运行文档中的所有代码,在每个过程中创建区域然后隐藏这些区域之外,此命令与“折叠块”命令相同。快捷键为先按 Ctrl+M,再按 Ctrl+O。

折叠块:<逻辑边界>

(Visual C++) 环境使用编程语言的服务自动确定逻辑边界,以便在包含插入点的函数内创建一个区域,然后隐藏该区域。例如,如果插入点在一个循环内,则为该语句创建一个区域,然后隐藏该区域。每次执行此命令时,包含该语句的下一个较高级别将处于折叠状态,直至执行过程在过程顶层或代码中的其他顶级定义上结束。

全部折叠:<logical structures>

(Visual C++) 执行与“折叠块”相同的函数,不同之处在于此命令可在一个步骤中递归折叠该函数中的所有逻辑结构。

创建可折叠的 Visual C++ 代码段

创建可折叠的代码段

  1. 选择所需的代码段或文本。

    说明:

    若要启用 “隐藏选定内容”命令,请选择一个连续的文本流。

  2. 右击选定内容,并从快捷菜单中选择“大纲显示”。

  3. 从“大纲显示”子菜单中选择“隐藏选定内容”。

    选定内容就折叠到最顶部的选定行下,并且该行左边的指示器边距中会显示一个加号 (+)。

将括在大括号内的代码设置为可折叠的

  1. 在代码编辑器中右击某个括在大括号 ("{}") 中的 Visual C++ 代码段,并从快捷菜单中选择“大纲显示”。

  2. 从“大纲显示”子菜单中选择“折叠块”。

    在含有大括号左半部分 ("{") 的行旁边的指示器边距中会出现一个减号 (-)。选择此符号时,该行以下一直到含有匹配的大括号右半部分 ("}") 的行中所有的行都会被折叠到此代码段的最顶行之下,同时出现一个加号 (+)。

    说明:

    在 Visual C++ 中编程时会启用此选项。

将括在大括号内的逻辑结构设置为可折叠的

  1. 在代码编辑器中右击某个括在大括号 ("{}") 中的 Visual C++ 代码段,该代码段中包括的逻辑结构也括在大括号 ("{}") 内。然后从快捷菜单中选择“大纲显示”。

  2. 从“大纲显示”子菜单中选择“全部折叠: <逻辑结构>”。

    在大括号左半部分 ("{")(位于外侧也括有大括号的每个子代码段中)旁边的指示器边距中会出现一个减号 (-)。选择此符号时,该行以下一直到含有匹配的大括号右半部分 ("}") 的行中所有的行都会被折叠到此子代码段的第一行之下,同时出现一个加号 (+)。

    说明:

    只有在 Visual C++ 中编程时此选项才可用。

折叠和展开代码

折叠和展开代码段

  1. 若要显示已折叠部分的所有行,请单击指示器边距中的加号 (+)。

  2. 若要隐藏已展开的部分,请单击指示器边距中的减号 (-)。

    您也可使用“切换大纲显示展开”或“切换所有大纲显示”命令隐藏所有可折叠的部分或将它们全部显示出来。

折叠和展开若干可折叠的代码段

  1. 在代码编辑器中选择连续的可折叠代码段。

  2. 右击选定内容,并从快捷菜单中选择“大纲显示”。

  3. 从“大纲显示”子菜单中选择“切换大纲显示展开”。

    如果有任何选定部分是展开的,则所有选定的部分都会折叠起来。如果所有选定的部分都是折叠的,则会将它们全部展开。

折叠或展开所有可折叠的代码段

  1. 右击代码编辑器中的任何位置,然后从快捷菜单中选择“大纲显示”。

  2. 从“大纲显示”子菜单中选择“切换所有大纲显示”。

    如果有任何可折叠部分是折叠的,则会展开所有部分。

    如果所有部分都是展开的,则会将它们全部折叠起来。

折叠所有定义

  1. 右击代码编辑器中的任何位置,然后从快捷菜单中选择“大纲显示”。

  2. 从“大纲显示”子菜单中选择“折叠到定义”。

    当前模块内所有可折叠的部分都会折叠起来。

搜索已折叠的代码段

“查找与替换”窗口有多种视图可用于搜索已折叠的代码段。

搜索已折叠的代码段

自动大纲显示

许多开发语言都支持自动大纲显示总处于打开状态的编辑模式。当您键入新的定义时,代码编辑器会在新代码块的周围自动创建可折叠的部分。在开发语言中选择启用大纲显示模式的选项后,您便可以使用代码编辑器快捷菜单中的命令进行以下操作:展开和折叠选定的部分、所有定义以及每一个可折叠的部分以及在自动大纲显示的开和关之间进行切换。

自动创建可折叠的代码段

  1. 为您在编程中正在使用的语言选择启用大纲显示模式的选项。

    有关在特定编程语言中启用“自动大纲显示”的选项的进一步信息,请参见 “选项”对话框 ->“文本编辑器”->“Basic”->“VB 专用”“选项”对话框 ->“文本编辑器”->“C/C++”->“格式设置”“选项”对话框 ->“文本编辑器”->“C#”->“格式设置”

  2. 向代码中添加新的过程、函数、枚举或其他代码块。

    在最顶行旁边的指示器边距中会出现一个减号 (-)。选择此符号时,已添加的代码就会折叠在最顶行之下,同时会出现一个加号 (+)。

关闭一个可折叠部分的大纲显示

  1. 在代码编辑器中右击一个可折叠的部分,然后从快捷菜单中选择“大纲显示”。

  2. 选择“停止隐藏当前区域”。

    该部分会随即展开,同时指示器边距中用于折叠该部分的减号 (-) 也不再出现。

关闭自动大纲显示并展开所有已折叠的部分

  1. 右击代码编辑器中的任何位置,然后从快捷菜单中选择“大纲显示”。

  2. 选择“停止大纲显示”。

    所有已折叠的部分都会展开,同时指示器边距中用于折叠这些部分的减号 (-) 也不再出现。

恢复自动大纲显示并折叠所有已展开的部分

  1. 右击代码编辑器中的任何位置,然后从快捷菜单中选择“大纲显示”。

  2. 选择“启动自动大纲显示”。

    任何可折叠的部分都会折叠到各自的最顶行之下,同时指示器边距中也会出现用于展开它们的加号 (+)。

请参见

任务

如何:折叠和隐藏代码节

概念

编辑器的方便命令和功能

自定义编辑器

参考

#Region 指令

#If...Then...#Else 指令

其他资源

编辑文本、代码和标记