适用于:
Visual Studio
Visual Studio for Mac
Visual Studio Code
重新排列代码图上的项目,以使它们更易于读取并改进其性能。
你可以自定义代码图而不会影响解决方案中的基础代码。 当你希望将重点放在关键代码元素或交流有关代码的想法时,这很有用。 例如,若要突出显示感兴趣的区域,你可以在图上选择代码元素并筛选它们,更改代码元素和链接的样式,隐藏或删除代码元素,以及使用属性、类别或组来组织代码元素。
若要创建代码图,必须具有 Visual Studio Enterprise。
你可以查看代码图,并在 Visual Studio Professional 中对代码图进行有限的编辑。
开始使用代码图
创建代码图(请参阅
映射解决方案之间的依赖项
,了解详细信息)。 如果不想等待该代码图完成生成操作,随时可以单击“取消”链接停止生成过程。 但是,如果进行此操作,将无法看到所有依赖项和链接。
生成代码图后,使用这些提示来审查代码:
查看代码中的自然依赖项群集。 在地图工具栏上,选择
“布局
”、“
快速群集
”。 请参阅
更改代码图布局
。
通过对相关节点分组,将代码图组织成更小的区域。 折叠这些组,以仅查看组与组之间的依赖项,这些依赖项会自动显示。 请参阅
组节点
。
使用筛选器简化代码图,并将重点放在节点类型或你感兴趣的链接上。 请参阅
筛选器节点和链接
。
实现大型代码图性能的最大化。 请参阅
映射解决方案之间的依赖项
了解详细信息。例如,在代码图工具栏上开启“跳过生成”,则在代码图上更新项目时,Visual Studio 将不会重新生成解决方案。
更改代码图布局
执行以下步骤
在代码图上选择一个或多个节点。
单击某个节点,以将其选中。 若要选择或取消选择多个节点,请在单击时按住 CTRL。
键盘:按 TAB 或使用箭头键将聚焦虚框移到某个节点,然后按空格键将其选中 。 按 CTRL + 空格键来进行多选或取消选择多个节点 。
在代码图上移动特定的节点。
拖动节点以对其进行移动。 若要在移动节点时移开其他节点和链接,请按住 SHIFT 键。
键盘:按住 CTRL,然后按箭头键。
更改独立于代码图上其他节点和组的组内的布局。
选择一个节点,然后打开快捷菜单。 选择“布局”,然后选择一种布局样式。
- 或 -
选择一个节点并将其展开以显示子节点。 单击节点标题以显示组弹出工具栏,然后打开
“更改组
列表的布局样式”。 选择其中的一个树形布局,“快速群集”或“列表视图”(将组内容排列成列表 )。
有关详细信息,请参阅
组节点
。
在代码图中撤消操作。
按 CTRL + Z 或使用 Visual Studio 的“撤消”命令 。
浏览该代码图
执行以下步骤
放大或缩小代码图。
旋转鼠标滚轮。
- 或 -
使用代码图工具栏上的“缩放”下拉列表。
- 或 -
使用键盘快捷键。 若要放大,请按
Ctrl + SHIFT + 。
(句点) 。 若要缩小,请按 CTRL+SHIFT+,(逗号)。
使用鼠标放大特定区域。
按住鼠标右键,同时在你感兴趣的区域周围绘制一个矩形。
调整大小,以适应其窗口内的代码图。
从代码图工具栏上的“缩放”列表中选择“缩放到合适大小” 。
- 或 -
单击
“缩放”以适合
代码映射工具栏上的图标
。 键盘:按 CTRL+0(零)。
按名称在代码图上查找节点。
提示:
这仅适用于地图上的项目。 若要查找在解决方案中但不在代码图中的项,请在解决方案资源管理器中机进行查找,然后将其拖到代码图中。 (拖动你的选择,或在解决方案资源管理器工具栏上单击“在代码图上显示”) 。
1. 在代码图工具栏上选择
“查找
”图标
(键盘:按
Ctrl + F
) 以显示地图右上角的搜索框。
2.键入项目名称,然后按
Return
或单击“放大镜”图标。 符合搜索的第一项将在代码图上显示为选中状态。
3. 若要自定义搜索,请打开下拉列表并选择搜索选项。 选项为“查找下一个”、“查找上一个”和“全选” 。 然后单击搜索文本框旁边的相应按钮。
或者,使用键盘:按 F3 以选择下一个匹配节点或按 SHIFT+F3 选择上一个匹配节点 。
4.选择指定搜索词处理方式的选项之一,方法是单击搜索文本框下方的图标。
选项为从左到右、匹配大小写、仅全字匹配、使用 .NET 正则表达式语法以及自动展开组以显示匹配的包含项。
重要:
仅当以前展开这些组时,才能使用搜索框查找折叠组中的匹配项。 若要查找这些匹配并自动展开其父组,选择搜索框下的这个选项。
选择所有未选定节点。
打开所选节点的快捷菜单。 选择“选择”、“反向选择” 。
选择链接到所选节点的其他节点。
打开所选节点的快捷菜单。 选择“选择”和以下其中之一:
- 若要选择直接链接到所选节点的其他节点,请选择
传入依赖项
。
- 若要从所选节点直接选择链接的其他节点,请选择
“传出依赖项
”。
- 若要选择直接链接到所选节点和从所选节点链接的其他节点,请选择
“两者”。
- 若要选择链接到所选节点和从所选节点的所有节点,请选择
“已连接子图
”。
- 若要选择所选节点的所有子级,请选择“
子级
”。
筛选节点和链接
执行以下步骤
查看有关某一节点或链接的详细信息。
将鼠标指针移至节点或链接上,直至出现工具提示。
聚合链接的工具提示将列出其所代表的各个依赖项。
- 或 -
打开节点或链接的快捷菜单。 依次选择“编辑”、“属性” 。
显示或隐藏组的内容。
- 若要展开组,请打开节点的快捷菜单,然后选择“
组
”,
展开
。
- 或 -
将鼠标指针移动至节点上方,直至出现 V 形(下箭头)按钮。 单击此按钮以展开该组。 键盘:若要展开或折叠所选组,请按
PLUS
键 ()
+
或
减号
键 (
-
) 。
- 若要折叠组,请打开节点的快捷菜单,然后选择“
组
”、“
折叠
”。
- 或 -
将鼠标指针移动至组上方,直至出现 V 形(上箭头)按钮。 单击此按钮以折叠该组。
- 若要展开所有组,请按
Ctrl
+
A
选择所有节点。 打开代码图的快捷菜单,然后依次选择“组”、“展开” 。
注意:
如果展开所有组会生成不可用的映射或内存问题,则此命令不可用。 建议仅将代码图展开至你关心的详细程度。
- 若要折叠所有组,请打开节点或映射的快捷菜单。 依次选择“组”、“全部折叠” 。
请参阅命名空间、类型或成员的代码定义。
打开节点的快捷菜单,然后选择“转到定义”。
-或-
双击该节点。 对于已展开的组,双击组的标头。
-或-
选择节点,然后按 F12。
例如:
- 对于包含一个类的命名空间,类的代码文件将打开以显示该类的定义。 在其他情况下,“查找符号结果”窗口将显示代码文件列表。
注意:
在 Visual Basic 命名空间上执行此任务时,命名空间后面的代码文件不会打开。 在包括 Visual Basic 命名空间在内的一组所选节点上执行此任务时也会出现该问题。 若要解决此问题,请手动浏览命名空间后的代码文件,或从你的选择中忽略命名空间的节点。
- 对于类或分部类,该类的代码文件将打开以显示类定义。
- 对于方法,父类的代码文件将打开以显示方法定义。
检查依赖项和参与聚合链接的项。
选择你感兴趣的链接,并打开所选内容的快捷菜单。 选择“
显示参与链接
”或
“在新代码图上显示参与链接
”。
Visual Studio 将展开位于链接两端的组,且仅显示参与链接的项和依赖项。
注意:
检查部分组中项之间的依赖关系时,可能会看到此行为:
-
不参与检查的项链接会从代码图中消失,尽管这些链接依然存在。
-
假设你在分部组中检查项链接,然后检查相同项的其他链接。 在第二个检查中,目标分部组仅显示第一个检查的项。 没有参与第一个检查,但参与了第二个检查的链接和目标项不会出现。
若要查看组中缺少的项,请选择
Refetch Children
(,指示不是所有组成员都出现在地图上) 。 你还可以尝试撤消操作(键盘:按 CTRL+Z)并检查新代码图上的依赖项。
检查不同组中多个节点之间的依赖关系。
展开组,以便你可以看到其所有子级。 选择包括其子级在内的,你感兴趣的所有节点。 代码图显示所选的节点之间的跨组链接。
若要选择组中的所有节点,在按住 SHIFT 和鼠标左键的同时在组周围绘制一个矩形。 若要选择代码图上的所有节点,请按 CTRL+A 。
提示:
若要随时显示跨组链接,请在地图工具栏上选择
“布局
”,
“高级
”,
“显示所有跨组链接
”。
请参阅节点或链接引用的项。
打开节点的快捷菜单,然后选择“查找所有引用”。
注意:
仅当为映射的 .dgml 文件中的节点或链接设置属性时
Reference
,才适用。 若要从节点或链接添加对项的引用,请参阅
通过编辑 DGML 文件自定义代码图
。
隐藏或显示节点和链路
隐藏节点将阻止节点参与布局算法。 默认情况下,将隐藏跨组链接。 跨组链接是连接跨组节点的单个链接。 如果组处于折叠状态,则代码图会将所有跨组链接聚合为组之间的单个链接。 当你展开一个组并选择该组内的节点时,跨组链接将出现并将显示组内的依赖项。
在你与使用 Visual Studio Professional 的用户共享在 Visual Studio Enterprise 中创建的代码图之前,请确保取消隐藏你希望其他人看到的所有节点或跨组链接。 否则,这些用户将无法取消隐藏这些项目。
隐藏或显示节点
执行以下步骤
将容器节点显示为组节点或叶节点。
若要将容器节点显示为叶节点:选择这些节点,打开所选节点的快捷菜单,然后依次选择“组”、“转换为叶” 。
若要将容器节点显示为组节点:选择这些节点,打开所选节点的快捷菜单,然后依次选择“组”、“转换为组” 。
更改组内部的布局。
选择该组,打开快捷菜单,选择“布局”,然后选择所需的布局样式。
- 或 -
1.选择组并确保其已展开。
2.再次单击组标题,并显示组工具栏。
3.打开
“更改组
列表
的布局样式”,然后选择所需的布局样式。
“列表视图”将组成员重新排列为列表。 “关系图默认值”将组布局重置为代码图的默认布局。 有关其他选项,请参阅
更改代码图布局
。
将节点添加到组。
将节点拖至组上。
拖动该节点时,Visual Studio 会显示一个指示器以显示你正在移动该节点。
你还可以将节点拖出组。
将节点添加到非组节点。
将节点拖至目标节点上。 通过向其添加节点,你可以将任何目标节点转换为组。
将选定节点进行分组。
1.选择要分组的节点。 弹出窗口工具栏会出现在你选择的最后一个节点上。
2.在工具栏上,选择第四个图标:如果节点展开,则 (
选择的第
四个图标组,该节点将有五个而不是四个图标) 。 键入新组的名称,然后按“返回”。
- 或 -
选择你想要进行分组的节点,然后打开所选节点的快捷菜单。 依次选择“组”、“添加父组”,键入新组的名称,然后按“返回” 。
你可以重命名组。 打开组快捷菜单,然后依次选择“编辑”、“属性”以打开 Visual Studio 属性窗口 。 根据需要,在“标签”属性中重命名该组。
选择你要移除的一个或多个组。 打开所选内容的快捷菜单,选择“组”、“移除组” 。
从其父组中移除节点。
选择要移动的节点。 打开所选内容的快捷菜单,依次选择“组”、“从父级移除” 。 这会移除节点,直至其祖父级,或者,如果其没有祖父组,则移除组外部的节点。
- 或 -
选择节点并将其拖出组。
添加、删除或重命名节点、链接和注释
可以在代码图上显示更多或更少项,以便向下钻取或简化代码图。 你也可以重命名项,并将注释添加到项。
在你与使用 Visual Professional 的用户共享使用 Visual Studio Enterprise 创建的代码图之前,请确保你希望其他人看到的代码元素在代码图上可见。 否则,这些用户将无法检索已删除的代码元素。
为代码元素添加节点
执行以下步骤
在当前鼠标指针位置添加一个新的一般节点。
1. 将鼠标指针移动到要放置新代码元素并按
Insert
的地图上的位置。
- 或 -
打开代码图的快捷菜单,然后依次选择“编辑”、“添加”、“一般节点” 。
2.键入新节点的名称,然后按
Return
。
在当前鼠标指针位置添加特定类型的代码元素节点。
1. 将鼠标指针移动到要放置新代码元素的位置,并打开地图的快捷菜单。
2.选择
“编辑
”、“
添加”
,然后选择所需的节点类型。
3.键入新节点的名称,然后按
Return
。
向组中添加一个一般或特定类型的代码元素节点。
1.选择组节点并打开快捷菜单。
2.选择
“编辑
”、“
添加”
,然后选择所需的节点类型。
3.键入新节点的名称,然后按
Return
。
添加一个链接自现有节点的同类型的新节点。
1.选择代码元素。 其上方会出现一个弹出窗口工具栏。
2. 在工具栏上,选择第二个图标
创建一个与此节点具有相同类别的节点,并向其添加新链接
。
3. 在地图上选择一个位置以放置新代码元素,然后单击鼠标左键。
4.键入新节点的名称,然后按
Return
。
添加一个新的一般节点,其链接自具有焦点的现有代码元素。
1.使用键盘,按
Tab
,直到要链接的代码元素 (虚线矩形) 。
2. 按
Alt
+
Insert
。
3.键入新节点的名称,然后按
Return
。
添加一个新的一般节点,其将链接至具有焦点的现有代码元素。
1. 使用键盘,按
Tab
,直到要链接的代码元素 (虚线矩形) 。
2. 按
Alt
+
Shift
+
Insert
。
3.键入新节点的名称,然后按
Return
。
解决方案中的代码元素。
1.在
解决方案资源管理器
中查找代码元素。 使用解决方案资源管理器搜索框或浏览解决方案。
提示:
若要查找依赖于类型或成员的代码元素,请在
解决方案资源管理器
中打开该类型或成员的快捷菜单。 选择你感兴趣的关系。 解决方案资源管理器仅显示具有指定依赖项的代码元素。
2.将感兴趣的代码元素拖到地图图面。 你也可以从“类视图”或“对象浏览器”拖动代码元素。
- 或 -
在解决方案资源管理器中,选择要映射的代码元素。 然后在解决方案资源管理器工具栏上单击“在代码图上显示” 。
默认情况下,新代码元素的父容器层次结构会显示在代码图上。 使用代码图工具栏上的“包括父级”按钮来更改此行为。 关闭时,只有代码元素本身会被添加到代码图中。 若仅为一次拖动操作反转此行为,请在将代码元素拖动到代码图的同时按住 CTRL 键。
Visual Studio 将为你的选定内容中的顶级代码元素项添加代码元素。 若要查看一个代码元素是否包含其他代码元素,请将鼠标指针移动到代码元素上,以便显示 V 形(下箭头)。 选择 V 形以展开代码元素。 若要展开所有代码元素,按 CTRL+A 可选择所有元素,打开代码图的快捷菜单,然后依次选择“组”、“展开” 。 如果展开所有组可能产生不可用的代码图或导致内存不足问题,则此命令不可用。
代码元素与代码图上的代码元素相关。
单击代码图工具栏上的“显示相关内容”按钮,然后选择你感兴趣的相关项的类型。
- 或 -
打开代码元素的快捷菜单。 根据你感兴趣的关系类型,在菜单上选择“显示…”项之一。 例如,你可以看到当前项引用的项、引用当前项的项、类的基类型和派生类型、方法调用方、包含类、命名空间和程序集。
有关详细信息,请参阅
本主题
。
编译 .NET 程序集(.dll 或 .exe)或二进制文件。
将程序集或二进制文件从 Visual Studio 外部拖至代码图。
仅当在相同的用户访问控制 (UAC) 权限级别运行 Windows 资源管理器或文件资源管理器和 Visual Studio 时,才能从 Windows 资源管理器或文件资源管理器拖动。 例如,如果启用了 UAC,并且你正以管理员身份运行 Visual Studio,则 Windows 资源管理器或文件资源管理器将阻止拖动操作。
你可以从代码图中移除代码元素和链接,而不会影响基础代码。 删除他们时,将从 DGML (.dgml) 文件中删除其定义。
通过编辑 DGML、添加未定义的代码元素或通过使用某些早期版本的 Visual Studio 创建的代码图不支持此功能。
为跟进工作标记代码元素
选择想要标记为跟进工作的代码元素或链接。
打开快捷菜单并选择“编辑”>“标记为跟进工作” 。
默认情况下,代码元素会获得红色背景。 请考虑使用适当的跟进工作信息向其
添加注释
。
更改元素的背景色,或通过选择“编辑”>“其他标志颜色”来清除跟进工作标志 。
更改代码元素或链接的样式
你可以使用预定义的图标和颜色,更改代码元素上的图标以及代码元素和链接的颜色。 例如,你可以选择一种颜色来突出显示具有特定类别或属性的代码元素和链接。 这样,你将可标识和重点显示代码图的特定区域。 通过编辑代码图的 .dgml 文件,指定自定义图标和颜色;请参阅
通过编辑 DGML 文件自定义代码图
。
将预定义的颜色或图标应用于具有特定类别或属性的代码元素或连接
在代码图工具栏上,选择“图例”。
在“图例”框中,确定代码元素类别或属性是否已经显示在列表中。
如果列表不包含类别或属性,请在
“图例
”框中选择
+
,然后选择
“节点属性
”、“
节点类别
”、“
链接属性
”或
“链接类别
”。 然后选择属性或类别。 类别或属性将立即出现在“图例”框中。
若要向代码元素创建并分配类别或属性,你可以编辑代码图的 .dgml 文件;请参阅
通过编辑 DGML 文件自定义代码图
。
在“图例”框中,单击你添加的或想要更改的类别或属性旁边的图标。
使用下表来选择要更改的样式:
Choose
合并代码图
你可以通过在代码图间复制和粘贴代码元素来合并代码图。 如果代码元素标识符匹配,则粘贴代码元素的功能类似于合并操作。 若要使此任务更简单,请将要可视化的所有程序集或二进制文件放入同一个文件夹,以便每个程序集或二进制文件的完整路径与你要合并的每个代码图的相同。
或者,你可以将这些程序集或二进制文件从文件夹拖动到相同的代码图。
映射解决方案中的依赖项
使用代码图调试应用程序
使用代码图分析查找潜在问题
通过编辑 DGML 文件自定义代码图
定向图形标记语言 (DGML) 引用