浏览和重新排列依赖项关系图
可以重新排列在依赖项关系图的项目以便于阅读和缩短呈现性能。
要求
最终的 Visual Studio,Visual Studio 高级专业版、Visual Studio professional
若要创建依赖项关系图,您必须具有最终的 Visual Studio。请参见 在依赖项关系图上可视化代码依赖项。
主题内容
管理大关系图
将关系图布局
浏览关系图
检查的节点和链接
隐藏或显示节点和链接
分组节点
使用鼠标或键盘,以提高更多方式浏览关系图中,选择"空白关系图的帮助链接。
管理大关系图
当您首次时生成依赖项关系图,Visual Studio 会创建它找到所有依赖项的代码索引。虽然此过程可能需要一些时间,特别是的大型解决方案或多个链接的关系图,该索引提高最新操作性能。如果代码后更改,则 Visual Studio 会用仅更新代码。
如果不希望等待关系图完成生成,则可以取消在 + 任何 + 时间生成过程并尝试以下建议:
关系图关注您的特定依赖关系。请参见 在依赖项关系图上可视化代码依赖项。
在生成整个解决方案的关系图之前,请减小解决方案的大小。
在您生成关系图后,请尝试以下建议:
在关系图工具栏上,选择 快速群集,以便可以在代码的自然群集依赖项。将关系图布局参见。
组织关系图到小大小按分组的相关节点。折叠只显示 intergroup 依赖项的这些组,会自动出现。分组节点参见。
手动编辑关系图删除不需要的节点和链接。更改关系图不会影响基础代码。请参见 编辑和自定义依赖项关系图。
将关系图布局
若要 |
在关系图工具栏或图形快捷菜单 |
---|---|
使整个关系图上的依赖关系流在给定的方向。这可帮助您发现代码中的体系结构层。 |
选择之一显示关系图作为节点构树:
|
请参见代码中的依赖项自然群集。 |
选择 快速群集 至多查看最依赖的节点群集中的中心和最少依赖的节点这些群集。 |
若要将在关系图的特定节点,请拖动这些元素。移开其他的节点和的链接,当您拖动节点,按住 移动 键,则将节点。独立关系图更改该组内的布局通过选择一节点构树布局、快速群集或 列表视图,将组的内容添加到列表中。分组节点参见。
说明 |
---|
以下功能不可用的此版本:邻居浏览模式、蝶形模式、高级选择和 依赖关系矩阵视图。 |
浏览关系图
若要 |
执行这些步骤 |
---|---|
浏览关系图 |
拖动到任意方向的关系图。 |
放大或缩小关系图 |
滚动鼠标轮。 - 或 - 选择加号 (+) 或减号 (-) 在关系图工具栏。 - 或 - 若要放大特定区域,请使用鼠标右键围绕该区域画出一个矩形。 |
调整控件的大小并容纳在窗口的关系图 |
在关系图工具栏上,选择 缩放到合适大小。 - 或 - 双击关系图的空白区域。 |
调整控件的大小并集中在某个特定节点的关系图 |
展开该节点。双击在节点的空白区域内。 Visual Studio 调整关系图,因此在关系图窗口中的整个组条件。 如果双击折叠的命名空间、选件类,或者其成员,Visual Studio 显示编码定义。 |
独立当前所选节点转换注意点 |
按 TAB。 一个虚线在当前焦点的节点旁边显示。 |
按名称查找在关系图上的节点。
提示
若要查找项目在解决方案中,但不在关系图上,找到它们在 解决方案资源管理器,然后将它们拖到关系图上。
|
重要事项
只有 + 当这些组之前,已经展开您在折叠组中可以使用搜索框查找匹配项。若要查找这些匹配和自动展开其父组,请选择此选项在搜索框下。
|
查找链接的源或目标 如果有太多链接而无法轻松地看到特定链接的源或目标,请使用此方法。 |
|
选择所有未选定节点 |
打开选定节点的快捷菜单。选择 选择,插入选定内容。 |
选择与选定的节链接的其他节点 |
打开选定节点的快捷菜单。选择 选择 和以下操作之一:
|
检查的节点和链接
依赖项关系图显示以下各种链接:
单个链接表示两个节点之间的单一关系。
跨组链接表示两个节点之间的关系在不同的组。
复合链接表示在两个组之间的同一个方向点的任何关系。
提示 |
---|
默认情况下,关系图显示跨组链接仅所选节点的。若要始终显示这些链接,请在关系图工具栏上,打开 更改链接在关系图上的呈现方式 列表 。选择 显示所有跨组链接。 该隐藏组之间的链接。 |
若要 |
执行这些步骤 |
---|---|
有关节点或链接的更多信息 |
将鼠标指针在节点或链接的顶部,直至出现工具提示。 聚合链接的工具提示列表它表示的各个依赖项。 - 或 - 打开节点或链接的快捷菜单。选择“属性”。 |
显示或隐藏组的内容 |
|
命名空间、类型或成员参见代码定义 |
打开节点的快捷菜单。选择 GoTo,转到定义。 - 或 - 双击节点。对于扩展的组中,双击该标头组。 - 或 - 选择节点。按 F12。 例如:
|
查找链接的源或目标 如果有太多链接而无法轻松地看到特定链接的源或目标,请使用此方法。 |
|
检查参与一个聚合链接的依赖项和项目 |
为单个链接:
对多个链接:
Visual Studio 展开组在链接的两端并显示参与该链接的那些项目和依赖项。
说明
在检查了项目之间的依赖项在节组中时,您可能会看到以下行为:
|
检查在多个节点之间的依赖项不同的组 |
|
请参见节点或链接引用的项
说明
只有 + 当 Reference 属性的节点或链接将关系图的 .dgml 文件时,这适用。添加对从节点的工作项或链接,请参见 编辑和自定义依赖项关系图。
|
打开节点的快捷菜单。选择 GoTo 和项目。 |
隐藏或显示节点和链接
隐藏节点从参与保留这些布局算法。默认情况下,跨组链接隐藏。跨组链接是连接跨组节点的单独的链接。如果组处于折叠状态,则关系图聚合所有跨组链接到组之间的单个链接。当展开一个组并选择的节点在组中,跨组链接在该组中将出现并显示依赖项。
警告 |
---|
在共享在最终的 Visual Studio 中创建人使用 Visual Studio premium 或 Visual Studio professional 的关系图之前,请确定对 unhide 所有节点或跨组链接希望其他发现。否则,这些用户不能对 unhide 项。 |
隐藏或显示节点
若要 |
执行这些步骤 |
---|---|
隐藏所选节点 |
|
隐藏未选定节点 |
|
显示隐藏的节点 |
|
通过编辑 .dgml 文件来隐藏节点 |
|
显示或隐藏链接
若要 |
在关系图工具栏上,打开 更改链接在关系图上的呈现方式 列表或打开关系图快捷菜单。 选择: |
---|---|
始终显示跨组链接 |
显示所有跨组链接 该隐藏组之间的链接。 |
显示所选节点的跨组链接仅 |
显示所选节点的跨组链接 |
始终隐藏跨组链接 |
隐藏所有跨组链接 |
隐藏所有链接(或显示所有链接) |
隐藏所有链接 若要显示所有链接,请选择 隐藏所有链接 禁用此模式。 |
分组节点
若要 |
执行这些步骤 |
---|---|
显示容器节点作为组节点或叶节点 |
若要显示容器节点是叶节点,选择节点。打开您选择的快捷菜单。选择 组,转换为叶。 若要显示容器节点作为组节点,选择节点。打开您选择的快捷菜单。选择 组,转换为组。 若要显示任何叶节点作为组节点,打开关系图的快捷菜单。选择 组,打开分组。 若要显示所有组节点是叶节点,打开关系图的快捷菜单。选择 组,关闭分组。 |
更改该组内的格式 |
|
添加一个节点到组 |
拖到组上的节点。 当您拖动节点时,Visual Studio 显示指示器表示,将节点。 还可以拖动节点在组外。 |
添加一个节点到非组节点 |
您可以将所有节点变为组。拖到目标节点上的节点。 |
组选定节点 |
|
具有特定类别或属性对节点进行分组 |
|
依据节点的容器对节点进行分组 |
|
依据节点的属性值对节点进行分组 |
|
移除组 |
选择要移除的组或组。打开您选择的快捷菜单。选择 组,移除组。 |
从节点的父组开始移除节点,直至其祖父组,或者,如果节点没有祖父组,则移除组外部的节点 |
选择要移动的节点。打开您选择的快捷菜单。选择 组,从父级移除。 |
也可以通过编辑关系图的 .dgml 文件来将节点组织为组。
将节点变为组或添加新组
若要将节点变为组,打开节点的快捷菜单。选择 GoTo,DGML。
Visual Studio 将打开关系图的 .dgml 文件并显示该节点的 <Node/> 元素。
- 或 -
添加新组:
打开关系图的空白区域的快捷菜单。选择 GoTo,DGML。
在 <Nodes> 部分添加新的 <Node/> 元素。
在 <Node/> 元素中,添加一个 Group 特性以指定组显示为展开状态还是折叠状态。例如:
<Nodes> <Node Id="MyFirstGroup" Group="Expanded" /> <Node Id="MySecondGroup" Group="Collapsed" /> </Nodes>
在 <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 属性的更多信息,请参见" 编辑和自定义依赖项关系图的 为节点和链接分配类别。