次の方法で共有


依存関係グラフの参照および再配置

レンダリングのパフォーマンスを向上するため、読みやすくする依存関係グラフの項目を再配置できます。

要件

このトピックの内容

  • 大きなグラフの管理

  • グラフのレイアウトの変更

  • グラフの参照

  • チェックのノードとリンク

  • ノードおよびリンクを非表示または表示

  • グループ ノード

マウスまたはキーボードを使用して、グラフを参照する方法については、空のグラフのヘルプのリンクを選択します。

大きなグラフの管理

依存関係グラフを最初に生成すると、Visual Studio にあるすべての依存関係のコード インデックスを作成します。このプロセスにかかることがあります。ただし、多くのリンクを含む大規模なソリューションまたはグラフの時間、特に、インデックス、新しい操作のパフォーマンスが向上します。コードが後で変更した場合、Visual Studio は、更新されたコードだけにインデックスが付け直されます。

生成するグラフが終了するのを待機しない場合は、生成プロセスをいつでもキャンセル、次のヒントを試みることができます:

グラフを生成したら、次のヒントを実行します:

  • グラフ ツール バーで、コードの自然な依存関係のクラスターを確認できるようにグラフ ツール バーの [クイック クラスター] ボタン[クイック クラスター] を選択します。グラフのレイアウトの変更を参照してください。

    依存関係のグラフ - クイック クラスター レイアウト

  • 関連するノードをグループ化して、小さな領域にグラフを編成します。自動的に表示される intergroup の依存関係のみを表示するには、それらのグループを折りたたみます。グループ ノードを参照してください。

  • 不要なノードおよびリンクを削除するには、グラフを手動で編集します。グラフを変更すると、基になるコードには影響しません。「依存関係グラフの編集およびカスタマイズ」を参照してください。

グラフのレイアウトの変更

目的

グラフ ツール バーまたはグラフのショートカット メニュー

特定の方向に全体のグラフの依存関係のフローを配置します。これは、コードのアーキテクチャ レイヤーを確認することができます。

ツリーとしてグラフを表示するには、次のいずれかを選択する:

  • 左から右 [左から右] レイアウト ボタン

  • 右から左 [右から左] グラフ ボタン

  • 上から下 [上から下] グラフ ボタン

  • 下から上 [下から上] グラフ ボタン

コードの自然な依存関係のクラスターを参照してください。

クラスターの中心で最も依存ノードおよびそれらのクラスターの外部で最小限の依存するノードを表示するには [クイック クラスター]グラフ ツール バーの [クイック クラスター] ボタン を選択します。

依存関係のグラフ - クイック クラスター レイアウト

グラフの特定のノードを移動するには、要素をドラッグします。ノードのドラッグにノードをドラッグするときにも他のノードおよびリンクを実行するには、Ctrl キーを押し [SHIFT] のキー。グループ内のレイアウトをリストにグループのコンテンツを配置するツリー レイアウト、[クイック クラスター]、または [リスト ビュー] の 1 とおりの方法でグラフとは無関係に変更します。グループ ノードを参照してください。

[!メモ]

次の機能はこのリリースでは実行できません: [隣接ブラウズ モード][Butterfly Mode][Advanced Selection][Dependency Matrix View]

グラフの参照

目的

実行する手順

グラフを確認します。

任意の方向にグラフをドラッグします。

グラフを拡大表示または縮小表示する

マウス ホイールを回転します。

または

グラフ ツール バーの正符号 ([+]) または負符号 (-) をクリックします。

または

特定の領域を拡大表示するには、マウスの右ボタンを使用して、その領域を囲むように四角形を描画します。

サイズ変更はウィンドウのグラフにのみ、

グラフ ツール バーで、[ウィンドウのサイズに合わせて大きさを変更] を選択します。

または

グラフの空の領域をダブルクリックします。

特定のノードのグラフのサイズを変更し、中央揃え

ノードを展開します。ノードの空の領域内をダブルクリックします。

Visual Studio は、グラフをグラフ ウィンドウ内のグループ全体が収まる、サイズを変更します。

折りたたまれた名前空間、クラス、メンバーをダブルクリックすると、Visual Studio はコード定義を示します。

現在選択されているノードとは関係なく、フォーカスの変更

TAB キーを押します。

点線は、現在フォーカスがあるノードの周囲に表示されます。

名前によってグラフのノードを検索します。

ヒントヒント
ソリューションのが、グラフの項目を検索するには、[ソリューション エクスプローラー] で検索、グラフにドラッグします。
依存関係グラフ検索ボックス
  1. Ctrl キーを押しながら F キーを押します。

    検索ボックスは、グラフの右上隅に表示されます。

  2. 項目の名前を入力します。検索範囲をカスタマイズするには、検索オプションを選択します。

    検索に一致する最初の項目はグラフで選択された状態で表示されます。

  3. 別の一致を表示するには、[次を検索] (Enter キー [F3]) を選択します。

    または

    すべての一致を選択するには、ドロップダウン リストを開きます。[すべて選択] を選択します。

重要 : 重要
これらのグループの前に配置したときのみ折りたたまれたグループが見つからなかったの検索ボックスを使用できます。これらの一致を検索、親グループを自動的に配置するには、検索ボックスの下でこのオプションを選択します。

リンク元またはリンク先を検索する

リンクの数が多すぎて、特定リンクのリンク元またはリンク先を簡単に確認できない場合は、この方法を使用します。

  1. ツリー レイアウトまたは [クイック クラスター]グラフ ツール バーの [クイック クラスター] ボタン のレイアウトにグラフのレイアウトを変更します。

    グラフのレイアウトの変更を参照してください。

  2. マウス ポインターをリンクの上に移動またはリンクを選択します。

    Visual Studio は、2 種類の矢印やリンクなどのソースとターゲット リンクの詳細を示すツールヒントを示します。

  3. 目的の方向を指す矢印を選択します。

    ソースまたはターゲットは、選択した方向で選択されていると考えられます。

すべての選択されていないノードを選択する

選択したノードのショートカット メニューを開きます。[選択][選択範囲の切り替え] を選択します。

選択した物にリンクされて追加のノードを選択します。

選択したノードのショートカット メニューを開きます。次の [選択] といずれかを選択する:

  • 選択したノードに直接リンク追加のノードを選択するには、 [入力方向の依存関係]を選択します。

  • 選択したノードから直接リンク追加のノードを選択するには、[出力方向の依存関係] を選択します。

  • 選択したノードとリンクして直接追加のノードを選択するには、との 両方を選択します。

  • 選択したノードとリンクしているすべてのノードを選択するには、[接続しているサブグラフ] を選択します。

  • 選択したノードのすべての子を選択するには、[子] を選択します。

チェックのノードとリンク

依存関係グラフは、次の種類のリンクを示します:

  • 個々のリンクは、2 種類のノード間の一つのリレーションシップを表します。

  • グループ間リンクは、異なるグループの 2 種類のノード間のリレーションシップを表します。

  • 集約リンクは 2 のグループ間で同じ方向を指すすべての関係を表します。

ヒントヒント

既定では、グラフには選択したノードのグループ間リンクのみが表示されます。これらのリンクは、グラフ ツール バーで常に表示するには、[グラフでのリンクの描画方法を変更します] の一覧 [グラフでのリンクの描画方法を変更します] ボタンを開きます。[すべてのグループ間リンクを表示] を選択します。

これは、グループ間の集約されたリンクを非表示にします。

目的

実行する手順

ノードまたはリンクの詳細については、" "を参照してください。

マウス ポインターをノードの上に移動するか、ツールヒントが表示されるまでリンクします。

集約リンクのツールヒントが表す個々の依存関係の一覧を示します。

または

ノードまたはリンクのショートカット メニューを開きます。[プロパティ] をクリックします。

グループの内容を表示または非表示にする

  • グループを展開するには、ノードのショートカット メニューを開きます。[グループ][展開] を選択します。

    または

    シェブロン ([^]) のボタンが表示されるまでノードの上にマウス ポインターを移動します。グループを展開するにはシェブロン ([^]) ボタンをクリックします。

    (キーボード: 選択したグループを展開する、または折りたたむには、[プラス] キー ([+]) または [MINUS] キー ([-]) を選択します。

    [プラス] キー ([+]) または [MINUS] キー ([-]) を選択すると、選択したすべてのグループを折りたたむには配置または、Ctrl キー [SHIFT] のキー。)

  • すべてのグループを展開するには、グラフのショートカット メニューを開きます。[グループ][すべてを展開] を選択します。

    メモメモ
    このコマンドは、すべてのグループを展開することが使用不可能なグラフやメモリの問題を生成する場合は使用できません。詳細レベルに、目的のグラフのみを配置することをお勧めします。
  • 単一のグループを折りたたむには、ノードのショートカット メニューを開きます。[グループ][折りたたむ] を選択します。

    または

    シェブロン ([^]) のボタンが表示されるまでグループの上にマウス ポインターを移動します。グループを折りたたむには、シェブロン ([^]) ボタンをクリックします。

  • すべてのグループを折りたたむには、グラフのショートカット メニューを開きます。[グループ][すべて折りたたむ] を選択します。

名前空間、型、またはメンバーのコード定義を参照してください。

ノードのショートカット メニューを開きます。[ジャンプ][定義へ移動] を選択します。

または

ノードをダブルクリックします。配置されたグループには、グループ ヘッダーをダブルクリックします。

または

ノードを選択します。F12 キーを押します。

次に例を示します。

  • 名前空間にそのクラスの定義を示すために、その名前空間の最初のアルファベット順のクラスのコード ファイルが開きます。

    メモメモ
    Visual Basic .NET 名前空間でこのタスクを実行すると、名前空間の背後にあるコード ファイルは開きません。この問題は、Visual Basic .NET 名前空間が含まれる選択したノードのグループでこのタスクを実行した場合にも発生します。この問題を回避するには、名前空間の背後にあるコード ファイルに手動で参照するか、選択項目から名前空間のノードを省略します。
  • 部分クラスまたはクラスのクラス定義を示すには、そのクラスのコード ファイルが開きます。

  • メソッドにはメソッド定義を示すには、親クラスのコード ファイルが開きます。

リンク元またはリンク先を検索する

リンクの数が多すぎて、特定リンクのリンク元またはリンク先を簡単に確認できない場合は、この方法を使用します。

  1. グラフ ツール バーで、ツリー レイアウトまたは [クイック クラスター]グラフ ツール バーの [クイック クラスター] ボタン のレイアウトにグラフのレイアウトを変更します。

  2. マウス ポインターをリンクの上に移動またはリンクを選択します。

    Visual Studio は、2 種類の矢印やリンクなどのソースとターゲット リンクの詳細を示すツールヒントを示します。

  3. 目的の方向を指す矢印を選択します。

    ソースまたはターゲットは、選択した方向で選択されていると考えられます。

集約リンクに参加する項目とその依存関係を調べる

単一のリンクの場合:

  1. リンクをクリックします。

  2. リンクの上にマウス ポインターを移動します。Visual Studio が間の正符号 ([+]) を持つ 2 台の矢印を表示する場合は、正符号 ([+]) を選択します。

    正符号 ([+]) を選択すると、新しいグラフを作成するには、Ctrl キー [SHIFT] のキー。

    または

    選択したコントロールのショートカット メニューを開きます。[表示][現在のダイアグラム内の寄与するリンク] または [新しいダイアグラム内の寄与するリンク] を選択します。

複数のリンクの場合:

  1. リンクをクリックします。

  2. 選択したコントロールのショートカット メニューを開きます。[表示][現在のダイアグラム内の寄与するリンク] または [新しいダイアグラム内の寄与するリンク] を選択します。

Visual Studio は、リンクの両端にグループを展開し、リンクに参加する依存関係のみと、それらの項目示します。

メモメモ
部分的なグループの項目間の依存関係を調べる場合は、次の動作が発生することもあります:
  • これらのリンクが存在している場合でも、グラフからのチェックに削除されない項目にリンクします。

  • 部分的なグループ項目へのリンクを確認し、同じ項目に後で別のリンクをチェックするとします。、の 2 番目のチェック時には、ターゲットの部分グループは、最初の試験の項目のみが表示されます。リンクと、最初のチェックに加わらなかったが、2 番目のチェックに含めるようにターゲットの項目は表示されません。

グループのすべてのメンバーがグラフに表示されないことを示すグループから足りないの項目を確認するには、[子の再フェッチ]子の再フェッチ アイコンを選択します。また、アクション (キーボードを元に戻すことができます: [CTRL+Z]) を選択し、新しいグラフの依存関係を調べる。

異なるグループのノード間の依存関係を調べる

  1. グループを展開し、そのすべての子が表示できます。

  2. 目的のすべてのノード (子を含む) を選択します。

    そのグループを囲む四角形を描画している間、グループのノードをすべて選択するには、マウスの左ボタンを押したまま。グラフのノードをすべて選択するには、[CTRL] +A.を押します。

    グラフに、選択したノード間のグループ間リンクが表示されます。

    ヒントヒント
    グループ間リンクを、グラフ ツール バーで常に表示するには、[グラフでのリンクの描画方法を変更します] の一覧 [グラフでのリンクの描画方法を変更します] ボタンを開きます。[すべてのグループ間リンクを表示] を選択します。

ノードまたはリンクの参照先の項目を参照してください。

メモメモ
これは Reference の属性がグラフの .dgml ファイルのノードまたはリンクに設定されている場合にのみ適用されます。ノードまたはリンクから項目への参照を追加するには、依存関係グラフの編集およびカスタマイズを参照してください。

ノードのショートカット メニューを開きます。[ジャンプ] および項目を選択します。

ノードおよびリンクを非表示または表示

ノードを非表示にすると、配置アルゴリズムからのこれらを保持します。既定では、グループ間リンクは非表示になります。グループ間リンクはグループ間のノードを接続する個々のリンクです。グループを折りたたむ場合、グラフではグループ間の単一のリンクにすべてのグループ間リンクが集計されます。グループ内のグループとノードを展開すると、グループ間リンクはそのグループに表示され、依存関係が表示されます。

Caution メモ注意

Visual Studio の Visual Studio Premium、Professional を使用するユーザーと最後の Visual Studio で作成されたグラフを共有する前に、unhide にノードを確認し、他に参照するグループ間リンクは。それ以外の場合は、これらのユーザーはそれらの項目に unhide できません。

ノードを表示する非表示にしたり、

目的

実行する手順

選択したノードを非表示にする

  1. 、非表示にするノード。

  2. 選択したノードまたはグラフのショートカット メニューを開きます。[選択][選択範囲の非表示] を選択します。

選択されていないノードを非表示にする

  1. 残され、表示するノード。

  2. 選択したノードまたはグラフのショートカット メニューを開きます。[選択][選択範囲以外を非表示] を選択します。

非表示のノードを表示します

  • グループが最初に配置されることがグループ内のすべての非表示のノードを表示するには、確認します。グループの左上隅の 子の再表示アイコン[子の再表示] を選択します。

  • すべての非表示のノードを表示するには、グラフのショートカット メニューを開きます。[選択][すべて再表示] を選択します。

.dgml ファイルを編集してノードを非表示にします。

  1. グラフのショートカット メニューを開きます。[ジャンプ][DGML] を選択します。

    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. グループ ノードをに変換するには、ノードのショートカット メニューを開きます。[ジャンプ][DGML] を選択します。

    Visual Studio は、グラフの .dgml ファイルを開き、そのノードの <Node/> の要素が強調表示されます。

    または

    新しいグループを追加するには:

    1. グラフの空白領域のショートカット メニューを開きます。[ジャンプ][DGML] を選択します。

    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 の属性の詳細については、依存関係グラフの編集およびカスタマイズノードおよびリンクにカテゴリを割り当てる "を参照してください。

参照

概念

依存関係グラフの編集およびカスタマイズ

依存関係グラフでのコード依存関係の視覚化