浏览和重新排列依赖项关系图

可以重新排列在依赖项关系图的项目以便于阅读和缩短呈现性能。

要求

主题内容

  • 管理大关系图

  • 将关系图布局

  • 浏览关系图

  • 检查的节点和链接

  • 隐藏或显示节点和链接

  • 分组节点

使用鼠标或键盘,以提高更多方式浏览关系图中,选择"空白关系图的帮助链接。

管理大关系图

当您首次时生成依赖项关系图,Visual Studio 会创建它找到所有依赖项的代码索引。 虽然此过程可能需要一些时间,特别是的大型解决方案或多个链接的关系图,该索引提高最新操作性能。 如果代码后更改,则 Visual Studio 会用仅更新代码。

如果不希望等待关系图完成生成,则可以取消在 + 任何 + 时间生成过程并尝试以下建议:

在您生成关系图后,请尝试以下建议:

  • 在关系图工具栏上,选择 快速群集关系图工具栏上的“快速群集”按钮,以便可以在代码的自然群集依赖项。 将关系图布局参见。

    依赖项关系图 - 快速群集布局

  • 组织关系图到小大小按分组的相关节点。 折叠只显示 intergroup 依赖项的这些组,会自动出现。 分组节点参见。

  • 手动编辑关系图删除不需要的节点和链接。 更改关系图不会影响基础代码。 请参见 编辑和自定义依赖项关系图

将关系图布局

若要

在关系图工具栏或图形快捷菜单

使整个关系图上的依赖关系流在给定的方向。 这可帮助您发现代码中的体系结构层。

选择之一显示关系图作为节点构树:

  • 从左到右 “从左到右布局”按钮

  • 从右到左 “从右到左”关系图按钮

  • 从上到下 “从上到下”关系图按钮

  • 从下到上 “从下到上”关系图按钮

请参见代码中的依赖项自然群集。

选择 快速群集 关系图工具栏上的“快速群集”按钮 至多查看最依赖的节点群集中的中心和最少依赖的节点这些群集。

依赖项关系图 - 快速群集布局

若要将在关系图的特定节点,请拖动这些元素。 移开其他的节点和的链接,当您拖动节点,按住 移动 键,则将节点。 独立关系图更改该组内的布局通过选择一节点构树布局、快速群集列表视图,将组的内容添加到列表中。 分组节点参见。

备注

以下功能不可用的此版本:邻居浏览模式蝶形模式高级选择依赖关系矩阵视图

浏览关系图

若要

执行这些步骤

浏览关系图

拖动到任意方向的关系图。

放大或缩小关系图

滚动鼠标轮。

- 或 -

选择加号 (+) 或减号 (-) 在关系图工具栏。

- 或 -

若要放大特定区域,请使用鼠标右键围绕该区域画出一个矩形。

调整控件的大小并容纳在窗口的关系图

在关系图工具栏上,选择 缩放到合适大小

- 或 -

双击关系图的空白区域。

调整控件的大小并集中在某个特定节点的关系图

展开该节点。 双击在节点的空白区域内。

Visual Studio 调整关系图,因此在关系图窗口中的整个组条件。

如果双击折叠的命名空间、选件类,或者其成员,Visual Studio 显示编码定义。

独立当前所选节点转换注意点

按 TAB。

一个虚线在当前焦点的节点旁边显示。

按名称查找在关系图上的节点。

提示提示
若要查找项目在解决方案中,但不在关系图上,找到它们在 解决方案资源管理器,然后将它们拖到关系图上。
依赖项关系图搜索框
  1. Ctrl+F

    搜索框出现在关系图上的右上角。

  2. 键入项目名称。 若要自定义您的搜索,请选择选项。

    搜索匹配的第一项在关系图上显示为选中状态。

  3. 若要查看另一个匹配项,请选择 查找下一个 (按 F3)。

    - 或 -

    若要选择所有匹配项,打开下拉列表。 选择 全选

重要说明重要事项
只有 + 当这些组之前,已经展开您在折叠组中可以使用搜索框查找匹配项。若要查找这些匹配和自动展开其父组,请选择此选项在搜索框下。

查找链接的源或目标

如果有太多链接而无法轻松地看到特定链接的源或目标,请使用此方法。

  1. 将关系图布局更改为节点构树布局或 快速群集 关系图工具栏上的“快速群集”按钮 格式。

    将关系图布局参见。

  2. 移动鼠标指针在链接、顶部或选择该链接。

    Visual Studio 显示两个箭头并列出该链接和其他链接详细信息的源和目标的工具提示。

  3. 选择在指向要跟踪的方向的箭头。

    该源或目标将显示为选定状态,根据所选的方向。

选择所有未选定节点

打开选定节点的快捷菜单。 选择 选择插入选定内容

选择与选定的节链接的其他节点

打开选定节点的快捷菜单。 选择 选择 和以下操作之一:

  • 若要选择直接链接到所选节点的其他节点,选择 传入依赖项

  • 若要选择直接从所选节点链接的其他节点,选择 传出依赖项

  • 若要选择直接向/从所选节点链接的其他节点,选择 两个

  • 若要选择来回所选节点链接的所有节点,请选择 已连接子关系图

  • 若要选择所选节点的所有子级,请选择 子级

检查的节点和链接

依赖项关系图显示以下各种链接:

  • 单个链接表示两个节点之间的单一关系。

  • 跨组链接表示两个节点之间的关系在不同的组。

  • 复合链接表示在两个组之间的同一个方向点的任何关系。

提示

默认情况下,关系图显示跨组链接仅所选节点的。若要始终显示这些链接,请在关系图工具栏上,打开 更改链接在关系图上的呈现方式 列表 “更改链接在关系图上的呈现方式”按钮。选择 显示所有跨组链接

该隐藏组之间的链接。

若要

执行这些步骤

有关节点或链接的更多信息

将鼠标指针在节点或链接的顶部,直至出现工具提示。

聚合链接的工具提示列表它表示的各个依赖项。

- 或 -

打开节点或链接的快捷菜单。 选择“属性”

显示或隐藏组的内容

  • 若要展开组,打开节点的快捷菜单。 选择 展开

    - 或 -

    将鼠标指针移到节点的顶部,直到尖括号 (^) 按钮显示。 选择尖括号 (^) 按钮展开组。

    (键盘:若要展开或折叠所选的组,选择 加号 键 (+) 或 减号 键 (-)。

    展开或折叠所有内容。一次所选的组,按中并按住 移动 密钥,当选择 加号 键 (+) 或 减号 键 (-)。)

  • 若要展开所有组,请打开关系图的快捷菜单。 选择 全部展开

    说明说明
    此命令不可用,如果展开所有组生成一个不可用的关系图或内存问题。建议您仅展开关系图对您关注到的详细程度。
  • 若要折叠单个组,打开节点的快捷菜单。 选择 折叠

    - 或 -

    将鼠标指针悬停在组的顶部,直到尖括号 (^) 按钮显示。 选择尖括号 (^) 按钮折叠组。

  • 若要折叠所有组,请打开关系图的快捷菜单。 选择 全部折叠

命名空间、类型或成员参见代码定义

打开节点的快捷菜单。 选择 GoTo转到定义

- 或 -

双击节点。 对于扩展的组中,双击该标头组。

- 或 -

选择节点。 按 F12。

例如:

  • 对于命名空间,按字母顺序排列的第一选件类的代码文件该命名空间中打开显示该选件类的定义。

    说明说明
    当您对 Visual Basic .NET 命名空间中的此任务,命名空间后面的代码文件不会打开。当您对包含 Visual Basic .NET 命名空间的一组所选节点执行此任务时,也会出现此问题。若要解决此问题,请手动浏览到命名空间后面的代码文件或忽略命名空间的节点从您的选择。
  • 为选件类或部分选件类,该选件类的代码文件打开演示类定义。

  • 对于方法,父选件类的代码文件打开显示方法定义。

查找链接的源或目标

如果有太多链接而无法轻松地看到特定链接的源或目标,请使用此方法。

  1. 在关系图工具栏上,将关系图布局更改为节点构树布局或 快速群集 关系图工具栏上的“快速群集”按钮 格式。

  2. 移动鼠标指针在链接、顶部或选择该链接。

    Visual Studio 显示两个箭头并列出该链接和其他链接详细信息的源和目标的工具提示。

  3. 选择在指向要跟踪的方向的箭头。

    该源或目标将显示为选定状态,根据所选的方向。

检查参与一个聚合链接的依赖项和项目

为单个链接:

  1. 选择该链接。

  2. 移动鼠标指针在链接的顶部。 当 Visual Studio 演示一个加号 (+) 中的两个箭头在它们之间,选择加号 (+)。

    若要创建新的关系图,请按住 移动 键,则选择加号 (+)。

    - 或 -

    打开您选择的快捷菜单。 选择 显示当前关系图中的参与链接新关系图中的参与链接

对多个链接:

  1. 选择链接。

  2. 打开您选择的快捷菜单。 选择 显示当前关系图中的参与链接新关系图中的参与链接

Visual Studio 展开组在链接的两端并显示参与该链接的那些项目和依赖项。

说明说明
在检查了项目之间的依赖项在节组中时,您可能会看到以下行为:
  • 不参与您的物理项目的链接到关系图中消失,因此,即使这些链接仍存在。

  • 假设您在一节组中检查某个链接到一个项目,然后在以后检查不同的链接到同一个项目。在您的第二次考试中,目标节组显示从您的第一次考试中仅项目。链接和不参与您的第一次考试的目标项,但参与您的第二次考试不会出现。

若要查看从的组中缺少项目,请选择 重新提取子级“重新提取子级”图标,指示不是组的所有成员出现在关系图上。您还可以尝试取消自己的事件 (键盘:选择 Ctrl+Z) 并检查在新关系图上的依赖关系。

检查在多个节点之间的依赖项不同的组

  1. 展开组,以便您可以看到其所有子级。

  2. 选择感兴趣的所有节点(包括其子级)。

    选择所有节点上的组,请按住鼠标左键,则在该组周围时绘制矩形。 若要选择在关系图中包含的所有节点,请按 Ctrl+A。

    关系图将显示所选节点之间的跨组链接。

    提示提示
    若要始终显示跨组链接,请在关系图工具栏上,打开 更改链接在关系图上的呈现方式 列表 “更改链接在关系图上的呈现方式”按钮。选择 显示所有跨组链接

请参见节点或链接引用的项

说明说明
只有 + 当 Reference 属性的节点或链接将关系图的 .dgml 文件时,这适用。添加对从节点的工作项或链接,请参见 编辑和自定义依赖项关系图

打开节点的快捷菜单。 选择 GoTo 和项目。

隐藏或显示节点和链接

隐藏节点从参与保留这些布局算法。 默认情况下,跨组链接隐藏。 跨组链接是连接跨组节点的单独的链接。 如果组处于折叠状态,则关系图聚合所有跨组链接到组之间的单个链接。 当展开一个组并选择的节点在组中,跨组链接在该组中将出现并显示依赖项。

警告

在共享在最终的 Visual Studio 中创建人使用 Visual Studio premium 或 Visual Studio professional 的关系图之前,请确定对 unhide 所有节点或跨组链接希望其他发现。否则,这些用户不能对 unhide 项。

隐藏或显示节点

若要

执行这些步骤

隐藏所选节点

  1. 要隐藏的选择的节点。

  2. 打开快捷菜单选中的节点或关系图的。 选择 选择隐藏所选内容

隐藏未选定节点

  1. 要保持可见的选择的节点。

  2. 打开快捷菜单选中的节点或关系图的。 选择 选择隐藏未选内容

显示隐藏的节点

  • 若要显示该组内的所有隐藏的节点,请确保组先展开。 选择 取消隐藏子级 “取消隐藏子级”图标 在组的左上角。

  • 若要显示所有隐藏的节点,打开关系图的快捷菜单。 选择 选择全部取消隐藏

通过编辑 .dgml 文件来隐藏节点

  1. 打开关系图的快捷菜单图面。 选择 GoToDGML

    Visual Studio 将打开关系图的 .dgml 文件。

  2. 在 <Node/> 元素中,添加下面的特性以隐藏节点:

    Visibility="Hidden"

    例如:

    <Nodes>
       <Node Id="MyNode" Visibility="Hidden"/>
    </Nodes>

显示或隐藏链接

若要

在关系图工具栏上,打开 更改链接在关系图上的呈现方式 列表或打开关系图快捷菜单。 选择:

始终显示跨组链接

显示所有跨组链接

该隐藏组之间的链接。

显示所选节点的跨组链接仅

显示所选节点的跨组链接

始终隐藏跨组链接

隐藏所有跨组链接

隐藏所有链接(或显示所有链接)

隐藏所有链接

若要显示所有链接,请选择 隐藏所有链接 禁用此模式。

分组节点

若要

执行这些步骤

显示容器节点作为组节点或叶节点

若要显示容器节点是叶节点,选择节点。 打开您选择的快捷菜单。 选择 转换为叶

若要显示容器节点作为组节点,选择节点。 打开您选择的快捷菜单。 选择 转换为组

若要显示任何叶节点作为组节点,打开关系图的快捷菜单。 选择 打开分组

若要显示所有组节点是叶节点,打开关系图的快捷菜单。 选择 关闭分组

更改该组内的格式

  1. 选择组。

    显示的组工具栏开头。

    依赖项关系图 - 分组工具栏

  2. 打开 更改组的布局样式 列表 依赖项关系图 - 分组工具栏 - 布局。 选择所需的格式。

    列表视图 重新排列组的成员添加到列表。 关系图默认值 重置组布局设置为图形默认值的格式。 有关其他选项,请参见 将关系图布局。

添加一个节点到组

拖到组上的节点。

当您拖动节点时,Visual Studio 显示指示器表示,将节点。

还可以拖动节点在组外。

添加一个节点到非组节点

您可以将所有节点变为组。 拖到目标节点上的节点。

组选定节点

  1. 选择要分组的节点。

    工具栏启动在最后选定节点上方。

    依赖项关系图工具栏

  2. 在工具栏上,选择 将选定节点进行分组 关系图工具栏 - 对所选内容进行分组

    - 或 -

    打开您选择的快捷菜单。 选择 添加父组

  3. 打开新组的快捷菜单。 选择“属性”。 在“标签”属性中重命名该组。

具有特定类别或属性对节点进行分组

  1. 选择一个具有特定类别或属性的节点。

  2. 打开您选择的快捷菜单。 选择 添加父组

  3. 打开新组的快捷菜单。 选择“属性”。 在“标签”属性中重命名该组。

依据节点的容器对节点进行分组

  1. 体系结构 菜单中,选择 窗口体系结构资源管理器

  2. 使用体系结构资源管理器来查找和选择要分组的所有节点。

    请参见 使用体系结构资源管理器查找代码

  3. 在当前列的右侧,选择折叠的操作列将其展开。 (键盘:按 选项卡 移动焦点,直到折叠的操作列增大。)

    说明说明
    操作列中突出显示,以便在移动指针时,或者焦点,则它上面。
  4. 在操作列中,选择 包含者。 (键盘:按 选项卡 移动焦点然后使用箭头键,直到 包含者 关系已选中。)

  5. 从下一列中将容器组拖到关系图。

  6. 打开关系图的快捷菜单图面,选择 打开分组

依据节点的属性值对节点进行分组

  1. 将关系图另存为磁盘上的 .dgml 文件。

  2. 体系结构 菜单中,选择 窗口体系结构资源管理器

  3. 体系结构资源管理器,在 文件系统下,选择 选择文件

  4. 在下一列中,选择保存的 .dgml 文件。

  5. 使用 体系结构资源管理器 找到并选择要分组的所有节点。

    请参见 使用体系结构资源管理器查找代码

  6. 在当前列的右侧,选择折叠的操作列将其展开。 (键盘:按 选项卡 移动焦点,直到折叠的操作列增大。)

    说明说明
    将指针移到“操作”列上时,该列会突出显示。
  7. 在操作列中,在 分组下,选择 按属性分组。 (键盘:按 选项卡 移动焦点然后使用箭头键,直到 按属性分组 命令已选中。)

  8. 在下一列中,选择要用作组的属性。

    下一列将出现,并显示可用的属性值。

  9. 从下一列中将属性值组拖到关系图。

  10. 打开关系图的快捷菜单图面。 选择 打开分组

移除组

选择要移除的组或组。 打开您选择的快捷菜单。 选择 移除组

从节点的父组开始移除节点,直至其祖父组,或者,如果节点没有祖父组,则移除组外部的节点

选择要移动的节点。 打开您选择的快捷菜单。 选择 从父级移除

也可以通过编辑关系图的 .dgml 文件来将节点组织为组。

将节点变为组或添加新组

  1. 若要将节点变为组,打开节点的快捷菜单。 选择 GoToDGML

    Visual Studio 将打开关系图的 .dgml 文件并显示该节点的 <Node/> 元素。

    - 或 -

    添加新组:

    1. 打开关系图的空白区域的快捷菜单。 选择 GoToDGML

    2. 在 <Nodes> 部分添加新的 <Node/> 元素。

  2. 在 <Node/> 元素中,添加一个 Group 特性以指定组显示为展开状态还是折叠状态。 例如:

    <Nodes>
       <Node Id="MyFirstGroup" Group="Expanded" />
       <Node Id="MySecondGroup" Group="Collapsed" />
    </Nodes>
    
  3. 在 <Links> 部分,确保对于组节点和其子节点之间的每个关系,都存在具有以下特性的 <Link/> 元素:

    • 一个指定组节点的 Source 特性

    • 一个指定子节点的 Target 特性

    • 一个指定组节点和其子节点之间的 Contains 关系的 Category 特性

    例如:

    <Links>
       <Link Category="Contains" Source="MyFirstNewGroup" Target="FirstGroupChildOne" />
       <Link Category ="Contains" Source="MyFirstNewGroup" Target="FirstGroupChildTwo" />
       <Link Category ="Contains" Source="MySecondNewGroup" Target="SecondGroupChildOne" />
       <Link Category="Contains" Source="MySecondNewGroup" Target="SecondGroupChildTwo" />
    </Links>
    

    有关 Category 属性的更多信息,请参见" 编辑和自定义依赖项关系图为节点和链接分配类别

请参见

概念

编辑和自定义依赖项关系图

在依赖项关系图上可视化代码依赖项