次の方法で共有


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

基になるコードに影響を与えずに依存関係グラフを編集できます。これは、キー項目に重点を置くか、コードに関するアイデアをやり取りする場合に便利です。たとえば、関心領域を強調表示するには、ノードを選択し、フィルター処理、ノードとリンクのスタイルを非表示または削除のノードに変更し、プロパティ、カテゴリ、またはグループを使用してノードを編成できます。

グラフの Directed Graph Markup Language (.dgml) ファイルを編集して、さらにカスタマイズできます。たとえば、またはドキュメント、URL、またはそのほかのグラフのような項目にリンクされたノード、ノードに再配置するにはカスタム スタイルを、プロパティおよびカテゴリとリンク指定するには、要素を編集できます。

[!メモ]

Visual Studio は、を削除して、.dgml ファイルを保存すると、未使用の DGML 要素と属性をクリーンアップします。また、新しいリンクを手動で追加するとノードの要素が自動的に作成されます。.dgml ファイルを保存すると、要素に追加した属性が、自身をアルファベット順に並べ替える場合があります。DGML 要素の詳細については、「Directed Graph Markup Language (DGML) について」を参照してください。

要件

このトピックの内容

  • ノードまたはリンク

  • 名前の変更のノードまたはリンク

  • 非表示を切り替えのノードとリンク

  • 追加のノードとリンク

  • グラフに追加のコメント

  • ノードの削除

  • グループ ノード

  • マージ グラフ

  • グラフのスタイルを変更する

  • ノードを変更するか、スタイルのリンク

  • 一方のグラフから他方のグラフにスタイルをコピーする

  • ノードおよびリンクにプロパティを割り当てる

  • ノードおよびリンクにカテゴリを割り当てる

  • ノードまたはリンクに項目をリンク

  • よく使用されるパスのエイリアスを作成する

ノードまたはリンク

目的

実行する手順

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

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

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

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

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

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

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

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

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

名前の変更のノードまたはリンク

  • ノードまたはリンクを選択します。F2 キーを押します。エディット ボックスが表示されたら、ノードまたはリンクの名前を変更します。

    ラベルが表示されている場合は、ラベルを選択します。

非表示を切り替えのノードとリンク

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

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. ツール バーで、[Create a node with the same category as this node and add a new link to it]グラフ ツール バー - リンク付きのノードを作成 を選択します。

  3. 新しいノードを設定するには、グラフの場所を選択します。

    (キーボード: まず、にあるフォーカスをリンクし、[Alt] + [挿入] を押してするノードまでの [タブ] を押します。)

その現在フォーカスがある既存のノードにリンク

まず、にあるフォーカスをリンクするノードまでの [タブ] を押します。[Alt] + [Shift] + [挿入] を押します。

ノードを追加するには

実行する手順

ソリューション項目

  1. [ソリューション エクスプローラー] の項目を検索します。[ソリューション エクスプローラー] の検索ボックスを使用するか、ソリューションを参照します。[ソリューション エクスプローラー] でコードを参照するには、コードの構造の表示"を参照してください。

    ヒントヒント
    型またはメンバーの依存関係がある項目を検索するには、型のショートカット メニューまたは [ソリューション エクスプローラー] のメンバーを開きます。対象関係を選択します。[ソリューション エクスプローラー] は、指定された依存関係の作業項目のみを示します。
  2. グラフに必要な項目をドラッグします。

    グラフに項目をドラッグしながら、Visual Studio Ultimate を使用して Ctrl キー [CTRL] のキーときに選択したアイテムの親コンテナーの階層を含める場合は。

    または

    [ソリューション エクスプローラー] で、[Create a new graph document…] の一覧を表示します。[アクティブな依存関係グラフへの追加] を選択します。親コンテナーの階層を追加するには、[Add to Active Dependency Graph with Containment Hierarchy] を選択します。

    Visual Studio は、任意のトップレベルのコード項目のノードを追加します。ノードに項目が含まれているかどうかを確認するには、シェブロン ([^]) を表示するには、ノードの上にマウス ポインターを移動します。ノードを展開するには [^] (の場合) を選択します。すべてのノードを展開するには、グラフのショートカット メニューを開きます。[グループ][すべてを展開] を選択します。

    メモメモ
    このコマンドは、すべてのグループを展開することが使用不可能なグラフやメモリの問題を生成する場合は利用できません。

グラフのノードに関連する項目

ノードのショートカット メニューを開きます。リレーションシップを [表示] と目的の種類をクリックします。

アセンブリの場合、選択する:

  • 参照アセンブリ: [アセンブリこのアセンブリの参照。外部アセンブリは [外部] のグループに表示されます。

  • アセンブリの参照: このアセンブリを参照するソリューション アセンブリを追加します。

クラスには、選択する:

  • 基本データ型: クラスでは、基本クラス、実装されたインターフェイスを追加します。

    インターフェイスには、基本インターフェイスを追加します。

  • 派生型: クラスには、派生クラスを追加します。

    インターフェイスには、派生インターフェイスを実装するクラスまたは構造体追加します。

  • すべての基本データ型: 基本クラスまたはインターフェイスの階層を再帰的に追加します。

  • すべての派生型: クラスでは、すべての派生クラスを再帰的に追加します。

    インターフェイスの場合は、すべての派生インターフェイスをクラスまたは構造体再帰的に実行する追加します。

  • コンテインメント階層: 親コンテナーの階層を追加します。

  • 使用される型: すべてのクラスおよびこのクラスを使用するメンバーを追加します。

  • 型で使用: このクラスを使用するメンバーとすべてのクラスを追加します。

メソッドの場合、選択する:

  • コンテインメント階層: 親コンテナーの階層を追加します。

  • 呼び出し Methods: このメソッドが呼び出すメソッド追加。

  • メソッドを呼び出して: このメソッドを呼び出すメソッド追加。

  • 基本型でオーバーライドされたメソッド: 他のメソッドをオーバーライドするか、またはインターフェイスのメソッドを実装するメソッドに対して、オーバーライドされると、指定されている場合、実装されるインターフェイス メソッド追加して、基本クラスのすべての抽象メソッドまたは仮想メソッドが。

  • ベース磁界: 追加のフィールドこのメソッドの参照。

フィールドに、選択する:

  • コンテインメント階層: 親コンテナーの階層を追加します。

  • 参照メソッド: このフィールドを参照する追加のメソッド。

.NET のコンパイル済みアセンブリ (.dll または .exe) または binary

グラフの項目と関係を検索、ドラッグに [アーキテクチャ エクスプローラー] を使用します。

既存のノード間にリンクを追加するには

  1. ソースのノードを選択します。

    ノードの上に表示されるツール バーの開始。

    依存関係のグラフ ツール バー

  2. ツール バーで、[Create new link from this node to which ever node that you click on next]グラフ ツール バー - リンクの作成 を選択します。ターゲットのノードを選択します。

    リンクは 2 種類のノード間に表示されます。

グラフに追加のコメント

  1. リンク コメントを追加するノードを選択します。

    ノードの上に表示されるツール バーの開始。

    依存関係のグラフ ツール バー

  2. ツール バーで、[新しいコメント ノードと選択したノードへの新しいリンクを作成します]グラフ ツール バー - リンク付きのコメントの作成 を選択します。

  3. 、コメントを入力します。新しい行に入力するには、[SHIFT] + [Enter] を押します。

ノードの削除

基になるコードに影響を与えずにグラフからノードを削除できます。ノードを削除するには、ノードをクリックし、[削除] キーを押します。ノードを削除すると、定義は、DGML (.dgml) ファイルから削除されます。

グループからノードを削除すると、[子の再フェッチ] のボタンは 子の再フェッチ アイコン、グループ内に表示されます。欠落したノードを取得するには、[子の再フェッチ]子の再フェッチ アイコンを選択します。DGML で作成したグラフは、未定義のノードを編集するか、最終的な旧バージョンの Visual Studio を使用して追加この機能をサポートしていません。

Caution メモ注意

Visual Studio の Visual Studio Premium、Professional を使用するユーザーと最後の Visual Studio を使用して作成されたグラフを共有する前に、他に参照するすべてのノード グラフでは表示されませんが、であることを確認してください。それ以外の場合は、これらのユーザーが削除したノードを取得できません。

グループ ノード

目的

実行する手順

グループ ノードまたはリーフ ノードとしてコンテナーのノードを表示します

リーフ ノードとしてコンテナー ノードを表示するには、ノードを選択します。選択したコントロールのショートカット メニューを開きます。[グループ][リーフに変換] を選択します。

グループ ノードとしてコンテナー ノードを表示するには、ノードを選択します。選択したコントロールのショートカット メニューを開きます。[グループ][グループに変換] を選択します。

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

リーフ ノードとしてすべてのグループ ノードを表示するには、グラフのショートカット メニューを開きます。[グループ][グループ化の解除] を選択します。

グループにノードを追加します。

グループにノードをドラッグします。

またはグループからノードをドラッグします。

非グループ化のノードを追加します。

ノードをグループに変換できます。ターゲットのノードをドラッグします。

選択したノードをグループ化

  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 属性の詳細については、「ノードおよびリンクにカテゴリを割り当てる」を参照してください。

マージ グラフ

グラフのノード間をコピーして貼り付けることによってグラフをマージできます。ノードの識別子が一致した場合、ノードを貼り付けることはマージのように機能します。このタスクを簡単にするためには、各アセンブリまたは binary の完全パスはマージする各グラフの同じになるように、同じフォルダーに視覚化する binary またはすべてのアセンブリを設定します。

また、これらの手順 1 のいずれかを実行して、視覚化する binary またはアセンブリの単一グラフを作成できます:

  • 同じアセンブリまたは binary をグラフにドラッグします。

    または

  • 開いている [アーキテクチャ エクスプローラー][ファイル システム] の下で参照するには [ファイルの選択] を選択して、アセンブリまたは binary を開きます。グラフを作成するには、視覚化する特定の項目を選択します。終了したら、[アーキテクチャ エクスプローラー] のツール バーの [Create a new graph document from all the selected nodes] を選択します。

グラフのスタイルを変更する

グラフの .dgml ファイルを編集することで、グラフの背景色および境界線の色を変更できます。ノードおよびリンクのスタイルを変更する方法については、「ノードおよびリンクのスタイルを変更する」を参照してください。

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

    Visual Studio は、グラフの .dgml ファイルが開きます。

  2. <DirectedGraph> 要素に次の任意の属性を追加して、グラフのスタイルを変更します。

    変更対象

    追加する属性

    背景色

    Background="ColorNameOrHexadecimalValue"

    境界線の色

    Stroke="StrokeValue"

    次に例を示します。

    <DirectedGraph Background="Green" xmlns="https://schemas.microsoft.com/vs/2009/dgml" >
       ...
       ...
    </DirectedGraph>
    

ノードおよびリンクのスタイルを変更する

ノードのアイコン、およびノードとリンクの色を変更できます。定義済みの色およびアイコンを使用することも、グラフの .dgml ファイルを編集してカスタム カラーおよびカスタム アイコンを指定することもできます。ノードおよびリンクにカスタム スタイルを適用します。を参照してください。

たとえば、色を選択することで、特定のカテゴリまたは特定のプロパティを持つノードおよびリンクを強調して表示できます。これにより、グラフの特定の領域を特定し、目立たせることができます。

特定のカテゴリまたは特定のプロパティを持つノードに定義済みの色またはアイコンを適用するには

  1. [凡例] ボックスが表示されていない場合は、グラフのショートカット メニューを開きます。[凡例の表示] を選択します。

  2. [凡例] ボックスで、ノードのカテゴリまたはプロパティがリストに表示されているかどうかを確認します。

  3. リストにカテゴリまたはプロパティが含まれていない場合は、[凡例] ボックスの [+] を、[ノード カテゴリ] または [ノード プロパティ] およびカテゴリまたはプロパティをクリックします。

    カテゴリまたはプロパティが [凡例] ボックスに表示されます。

    [!メモ]

    カテゴリを作成してノードに割り当てる方法については、「ノードおよびリンクにカテゴリを割り当てる」を参照してください。プロパティを作成してノードに割り当てる方法については、「ノードおよびリンクにプロパティを割り当てる」を参照してください。

  4. [凡例] ボックスで、カテゴリまたはプロパティの横のドロップダウン リストを開きます。

  5. 次の表を使用して、変更するスタイルを選択します。

    変更対象

    Choose

    背景色

    背景

    外枠の色

    テキストの色

    Foreground

    Icon

    [アイコン]

    [カラー セット ピッカー] ボックスは、色ように見えることがあります (またはアイコン) を選択できます。

  6. [カラー セット ピッカー] のダイアログ ボックスで、次のいずれかを実行します:

    適用対象

    実行する手順

    色 (またはアイコンの設定

    [色の選択] (または アイコン) [設定] リストを開きます。色のセットをクリックします (またはアイコン)。

    既定の色 (またはアイコン) に [色の選択] (アイコン) [設定] の一覧で元に戻すには、Noneを選択します。

    特定の色 (またはアイコン)

    カテゴリまたはプロパティ値のリストを開きます。色選択します (またはアイコン)。

    [!メモ]

    [凡例] ボックス内のスタイルを再整列、削除、または一時的に無効化できます。凡例ボックスを変更します。を参照してください。

特定のカテゴリまたは特定のプロパティを持つリンクに定義済みの色を適用するには

  1. [凡例] ボックスが表示されていない場合は、グラフのショートカット メニューを開きます。[凡例の表示] を選択します。

  2. [凡例] ボックスで、カテゴリまたはプロパティがリストに表示されているかどうかを確認します。

  3. リストにカテゴリまたはプロパティが含まれていない場合は、[凡例] ボックスの [+] を、[リンク カテゴリ] または [リンク プロパティ] およびカテゴリまたはプロパティをクリックします。

    カテゴリまたはプロパティが [凡例] ボックスに表示されます。

    [!メモ]

    カテゴリを作成してリンクに割り当てる方法については、「ノードおよびリンクにカテゴリを割り当てる」を参照してください。プロパティを作成してリンクに割り当てる方法については、「ノードおよびリンクにプロパティを割り当てる」を参照してください。

  4. [凡例] ボックスで、カテゴリまたはプロパティの横のリストを開きます。

  5. リンクのアウトラインと矢じりの色を変更する [ストローク] を選択します。

    [カラー セット ピッカー] ボックスは、色を選択できるようになります。

  6. [カラー セット ピッカー] ボックスで、次のいずれかを実行します:

    適用対象

    実行する手順

    色のセット

    [色の選択][設定] の一覧を表示します。色のセットを選択します。

    既定の色に、[カラー設定の選択] の一覧で元に戻すには、Noneを選択します。

    特定の色

    色を選択するために、型またはプロパティ値のリストを開きます。

    [!メモ]

    [凡例] ボックス内のスタイルを再整列、削除、または一時的に無効化できます。凡例ボックスを変更します。を参照してください。

Ee842619.collapse_all(ja-jp,VS.110).gifノードおよびリンクにカスタム スタイルを適用する

次のアイテムにカスタム スタイルを適用できます。

  • 単一のノードおよびリンク

  • ノードのグループおよびリンクのグループ

  • 特定の条件に基づくノードのグループおよびリンクのグループ

単一のノードにカスタム スタイルを適用するには

  1. スタイルをカスタマイズするノードのショートカット メニューを開きます。[ジャンプ][DGML] を選択します。

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

  2. <Node/> 要素に次の属性を追加して、スタイルをカスタマイズします。

    変更対象

    追加する属性

    背景色

    Background="ColorNameOrHexadecimalValue"

    外枠

    Stroke="ColorNameOrHexadecimalValue"

    外枠の太さ

    StrokeThickness="StrokeValue"

    テキストの色

    Foreground="ColorNameOrHexadecimalValue"

    Icon

    Icon="IconFilePathLocation"

    テキストのサイズ

    FontSize="FontSizeValue"

    テキストの種類

    FontFamily="FontFamilyName"

    テキストの太さ

    FontWeight="FontWeightValue"

    テキストのスタイル

    FontStyle="FontStyleName"

    たとえば、テキストのスタイルとして Italic を指定できます。

    テクスチャ

    Style="Glass"

    または

    Style="Plain"

    Shape

    アイコンと形状を置き換えるには、Shape のプロパティを None に設定し、アイコン ファイルを使用すると Icon のプロパティを設定します。

    Shape="ShapeFilePathLocation"

    次に例を示します。

    <Nodes>
       <Node Id="MyNode" Background="#FF008000" Stroke="#FF000000"
       Foreground="#FFFFFFFF" Icon="...\Icons\Globe.png"/>
    </Nodes>
    

単一のリンクにカスタム スタイルを適用するには

  1. グラフで、リンクの上にマウス ポインターを移動します。ツールヒントが表示され、リンク元ノードとリンク先ノードを確認します。(キーボード: Enter キータブ フォーカスまでリンクになります)。

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

    Visual Studio は、グラフの .dgml ファイルが開きます。

  3. リンク元ノードとリンク先ノードの両方の名前を含む <Link/> 要素を探します。

  4. <Link/> 要素に次の属性を追加して、スタイルをカスタマイズします。

    変更対象

    追加する属性

    アウトラインと矢じりの色

    Stroke="ColorNameOrHexadecimalValue"

    外枠の太さ

    StrokeThickness="StrokeValue"

    外枠のスタイル

    StrokeDashArray="StrokeArrayValues"

    次に例を示します。

    <Links>
       <Link Source="MyFirstNode" Target="MySecondNode" Background="Green" Stroke="#FF000000" StrokeDashArray="2,2"/>
    </Links>
    

ノードのグループまたはリンクのグループにカスタム スタイルを適用するには

  1. ノードまたはリンクに、目的のカテゴリまたはプロパティを割り当てます。

    ヒントヒント

    多くのノードまたはリンクにわたってスタイルを繰り返すことがある場合、カテゴリをこれらのノードまたはリンクに適用し、そのカテゴリにスタイルを適用することを検討する必要があります。詳細については、「ノードおよびリンクにカテゴリを割り当てる」および「ノードおよびリンクにプロパティを割り当てる」を参照してください。

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

    Visual Studio は、グラフの .dgml ファイルが開きます。

  3. <Styles></Styles> 要素が存在しない場合、<Links></Links> 要素の後の <DirectedGraph></DirectedGraph> 要素の下位に、この要素を追加します。

  4. <Styles></Styles> 要素で、<Style/> 要素の下位に次の属性を指定します。

    • TargetType="Node | Link | Graph"

    • GroupLabel="NameInLegendBox"

    • ValueLabel="NameInStylePickerBox"

    全種類の対象にカスタム スタイルを適用する場合、条件は使用しません。

ノードのグループまたはリンクのグループに条件付きスタイルを適用するには

  1. <Style/> 要素に、Expression 属性を含む <Condition/> 要素を追加して、ブール値を返す式を指定します。

    次に例を示します。

    <Condition Expression="MyCategory"/>
    

    または

    <Condition Expression="MyCategory > 100"/>
    

    または

    <Condition Expression="HasCategory('MyCategory')"/>
    

    この式では、次のバッカス・ナウア記法 (BNF: Backus-Naur Form) 構文を使用します。

    <Expression> ::= <BinaryExpression> | <UnaryExpression> | "("<Expression>")" | <MemberBindings> | <Literal> | <Number>

    <BinaryExpression> ::= <Expression> <Operator> <Expression>

    <UnaryExpression> ::= "!"<Expression> | "+" <Expression> | "-" <Expression>

    <Operator> ::= "<" | "<=" | "=" | ">=" | ">" | "!=" | "or" | "and" | "+" | "*" | "/" | "-"

    <MemberBindings> ::= <MemberBindings> | <MemberBinding> "."<MemberBinding>

    <MemberBinding> ::= <MethodCall> | <PropertyGet>

    <MethodCall> ::= <Identifier> "(" <MethodArgs> ")"

    <PropertyGet> ::= Identifier

    <MethodArgs> ::= <Expression> | <Expression> "," <MethodArgs> | <empty>

    <Identifier> ::= [^.]*

    <Literal> ::= 一重引用符または二重引用符で囲んだリテラル文字列

    <Number> ::= 数字の文字列 (小数点も可)

    スタイルを適用するすべて true である必要が <Condition/>の複数の要素を指定できます。

  2. <Condition/> 要素の後の次の行に、1 つ以上の <Setter/> 要素を追加して、条件を満たすグラフ、ノード、またはリンクに適用する Property 属性と、固定の Value 属性または計算される Expression 属性を指定します。

    次に例を示します。

    <Setter Property="BackGround" Value="Green"/>
    

以下に簡単な完成例を示します。この例の条件では、ノードの Passed カテゴリが True に設定されているか、または False に設定されているかに基づいて、ノードが緑色または赤色で表示されます。

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph xmlns="https://schemas.microsoft.com/vs/2009/dgml">
   <Nodes>
      <Node Id="MyFirstNode" Passed="True" />
      <Node Id="MySecondNode" Passed="False" />
   </Nodes>
   <Links>
   </Links>
   <Styles>
      <Style TargetType="Node" GroupLabel="Passed" ValueLabel="True">
         <Condition Expression="Passed='True'"/>
         <Setter Property="Background" Value="Green"/>
      </Style>
      <Style TargetType="Node" GroupLabel="Passed" ValueLabel="False">
         <Condition Expression="Passed='False'"/>
         <Setter Property="Background" Value="Red"/>
      </Style>
   </Styles>
</DirectedGraph>

次の表に、実際に使用できる条件例をいくつか示します。

目的

DGML の例

コード行数の関数に従ってフォント サイズを設定し、ノードのサイズも変更する。この例では、単一の条件式を使用して、複数のプロパティ (FontSize および FontFamily) を設定しています。

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph xmlns="https://schemas.microsoft.com/vs/2009/dgml">
<Nodes>
   <Node Id="Class1" LinesOfCode ="200" />
   <Node Id="Class2" LinesOfCode ="1000" />
   <Node Id="Class3" LinesOfCode ="20" />
</Nodes>
<Properties>
   <Property Id="LinesOfCode" Label="LinesOfCode" Description="LinesOfCode" DataType="System.Int32" />
</Properties>
<Styles>
   <Style TargetType="Node" GroupLabel="LinesOfCode" ValueLabel="Function">
      <Condition Expression="LinesOfCode &gt; 0" />
      <Setter Property="FontSize" Expression="Math.Max(9,Math.Sqrt(LinesOfCode))" />
      <Setter Property="FontFamily" Value="Papyrus" />
   </Style>
</Styles>
</DirectedGraph>

Coverage プロパティに基づいて、ノードの背景色を設定する。スタイルは、if-else ステートメントと同様に、出現する順番で評価されます。

この例では、次のように記述されています。

  1. Coverage が 80 を超える場合、Background プロパティを緑色に設定します。

  2. Coverage が 50 を超える場合、Coverage プロパティの値に基づいて、Background プロパティをオレンジ色の網かけに設定します。

  3. それ以外の場合、Coverage プロパティの値に基づいて、Background プロパティを赤色の網かけに設定します。

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph xmlns="https://schemas.microsoft.com/vs/2009/dgml">
<Nodes>
   <Node Id="Class1" Coverage="58" />
   <Node Id="Class2" Coverage="95" />
   <Node Id="Class3" Coverage="32" />
</Nodes>
<Properties>
   <Property Id="Coverage" Label="Coverage" Description="Code coverage as a percentage of blocks" DataType="Double" />
</Properties>
<Styles>
   <Style TargetType="Node" GroupLabel="Coverage" ValueLabel="Good">
      <Condition Expression="Coverage &gt; 80" />
      <Setter Property="Background" Value="Green" />
   </Style>
   <Style TargetType="Node" GroupLabel="Coverage" ValueLabel="OK">
      <Condition Expression="Coverage &gt; 50" />
      <Setter Property="Background" Expression="Color.FromRgb(180 * Math.Max(1, (80 - Coverage) / 30), 180, 0)" />
   </Style>
   <Style TargetType="Node" GroupLabel="Coverage" ValueLabel="Bad">
      <Setter Property="Background" Expression="Color.FromRgb(180, 180 * Coverage / 50, 0)" />
   </Style>
</Styles>
</DirectedGraph>

Shape プロパティを None に設定して、図形をアイコンで置き換える。Icon プロパティを使用して、アイコンの場所を指定します。

<DirectedGraph xmlns="https://schemas.microsoft.com/vs/2009/dgml">
<Nodes>
   <Node Id="Automation" Category="Test" Label="Automation" />
   <Node Id="C# Provider" Category="Provider" Label="C# Provider" />
</Nodes>
<Categories>
   <Category Id="Provider" Icon="...\Icons\Module.png" Shape="None" />
   <Category Id="Test" Icon="...\Icons\Page.png" Shape="None" />
</Categories>
<Properties>
   <Property Id="Icon" DataType="System.String" />
   <Property Id="Label" Label="Label" Description="Displayable label of an Annotatable object" DataType="System.String" />
   <Property Id="Shape" DataType="System.String" />
</Properties>
<Styles>
   <Style TargetType="Node" GroupLabel="Group" ValueLabel="Has category">
      <Condition Expression="HasCategory('Group')" />
      <Setter Property="Background" Value="#80008080" />
   </Style>
   <Style TargetType="Node">
      <Setter Property="HorizontalAlignment" Value="Center" />
   </Style>
</Styles>
</DirectedGraph>

Ee842619.collapse_all(ja-jp,VS.110).gif[凡例] ボックスを変更する

[凡例] ボックス内のスタイルを、次のように再整列、削除、または一時的に無効化できます。

  1. [凡例] ボックスのスタイルのショートカット メニューを開きます。

  2. 次のいずれかのタスクを実行します。

    目的

    Choose

    アイテムを上へ移動する

    [上へ移動]

    アイテムを下へ移動する

    [下へ移動]

    アイテムを削除する

    削除

    アイテムを無効にする

    [無効化]

    アイテムを再度有効にする

    [有効化]

一方のグラフから他方のグラフにスタイルをコピーする

  1. [凡例] ボックスがソース グラフに表示されることを確認します。これが表示されない場合は、ソース グラフの空白領域のショートカット メニューを開きます。[凡例の表示] を選択します。

  2. [凡例] ボックスのショートカット メニューを開きます。[凡例のコピー] を選択します。

  3. ターゲット グラフに凡例を貼り付けます。

ノードおよびリンクにプロパティを割り当てる

ノードおよびリンクにプロパティを割り当てることで、ノードおよびリンクを編成できます。たとえば、特定のプロパティを持つノードを選択して、それらのグループ化、スタイルの変更、または非表示化を実行できます。

ノードにプロパティを割り当てるには

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

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

  2. <Node/> 要素で、プロパティの名前とその値を指定します。次に例を示します。

    <Nodes>
       <Node Id="MyNode" MyPropertyName="PropertyValue" />
    </Nodes>
    
  3. <Property/> 要素を <Properties> セクションに追加して、属性 (要素の表示名、データ型など) を指定します。

    <Properties>
       <Property Id="MyPropertyName" Label="My Property" DataType="System.DataType"/>
    </Properties>
    

リンクにプロパティを割り当てるには

  1. グラフで、リンクの上にマウス ポインターを移動します。ツールヒントが表示され、リンク元ノードとリンク先ノードを確認します。(キーボード: フォーカスがリンクになるまで [タブ] を押します。)

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

    Visual Studio は、グラフの .dgml ファイルが開きます。

  3. リンク元ノードとリンク先ノードの両方の名前を含む <Link/> 要素を探します。

  4. <Node/> 要素で、プロパティの名前とその値を指定します。次に例を示します。

    <Links>
       <Link Source="MyFirstNode" Target="MySecondNode" MyPropertyName="PropertyValue" />
    </Links>
    
  5. <Property/> 要素を <Properties> セクションに追加して、属性 (要素の表示名、データ型など) を指定します。

    <Properties>
       <Property Id="MyPropertyName" Label="My Property Name" DataType="System.DataType"/>
    </Properties>
    

ノードおよびリンクにカテゴリを割り当てる

ノードにカテゴリを割り当てることで、ノードを編成できます。たとえば、特定のカテゴリに属するノードを選択して、それらのグループ化、スタイルの変更、または非表示化を実行できます。特定のカテゴリを持つリンクは強調表示できます。詳細については、以下のセクションを参照してください。

  • グループ ノード

  • ノードおよびリンクのスタイルを変更する

  • ノードの表示/非表示を切り替える

ノードにカテゴリを割り当てるには

  • 定義済みのカテゴリを、[分類 1] などの再配置は、を開いてノードのショートカット メニュー。[分類] および定義済みカテゴリを選択します。

または

  • カスタム カテゴリを作成して割り当てるには

    • 並べ替えるノードを選択します。[プロパティ] のウィンドウを開くに [F4] を押します。ノードの [新しいカテゴリ] のプロパティのカテゴリの名前を入力します。ENTER キーを押します。

    または

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

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

    2. <Node/> 要素に Category 属性を追加して、カテゴリの名前を指定します。次に例を示します。

      <Nodes>
         <Node Id="MyNode" Category="MyCategory" />
      </Nodes>
      
    3. <Categories> セクションに <Category/> 要素を追加することで、Label 属性を使用してそのカテゴリの表示テキストを指定できます。

      <Categories>
         <Category Id="MyCategory" Label="My Category" />
      </Categories>
      

リンクにカテゴリを割り当てるには

  1. グラフで、マウス ポインターをリンクの上へ移動してツールヒントを表示し、リンク元ノードとリンク先ノードを確認します。(キーボード: フォーカスがリンクになるまで [タブ] を押します。)

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

    Visual Studio は、グラフの .dgml ファイルが開きます。

  3. リンク元ノードとリンク先ノードの両方の名前を含む <Link/> 要素を探します。

  4. <Link/> 要素に Category 属性を追加して、カテゴリの名前を指定します。次に例を示します。

    <Links>
       <Link Source="MyFirstNode" Target="MySecondNode" Category="MyCategory"
    </Links>
    
  5. <Categories> セクションに <Category/> 要素を追加することで、Label 属性を使用してそのカテゴリの表示テキストを指定できます。

    <Categories>
       <Category Id="MyCategory" Label="My Category" />
    </Categories>
    

階層構造のカテゴリを作成すると、継承を使用してノードの編成および子カテゴリへの属性の追加を行う際に便利です。

階層構造のカテゴリを作成するには

  • 親カテゴリを示す <Category/> 要素を追加し、次に子カテゴリの <Category/> 要素に BasedOn 属性を追加します。

    次に例を示します。

    <Nodes>
       <Node Id="MyFirstNode" Label="My First Node" Category= "MyCategory" />
       <Node Id="MySecondNode" Label="My Second Node" />
    </Nodes>
    <Links>
       <Link Source="MyFirstNode" Target="MySecondNode" />
    </Links>
    <Categories>
       <Category Id="MyCategory" Label="My Category" BasedOn="MyParentCategory"/>
       <Category Id="MyParentCategory" Label="My Parent Category" Background="Green"/>
    </Categories>
    

    この例では、MyFirstNode の背景は緑色になります。これは、その Category 属性が MyParentCategory の Background 属性を継承するためです。

ノードまたはリンクに項目をリンク

グラフの .dgml ファイルを編集し、ノードの <Node/> の要素またはリンクの <Link/> の要素へ Reference の属性を追加して、ドキュメントや URL など、ノードまたはリンク先の項目をリンクさせることができます。を開き、ノードからその内容を表示またはリンクできます。Reference 属性では、そのコンテンツのパスを指定します。これには、.dgml ファイルの場所に対する相対パス、または絶対パスを使用できます。

Caution メモ注意

相対パスを使用し、.dgml ファイルが別の位置に移動する場合は、それらのパスは、解決されません。リンク コンテンツを開き、表示しようとしてコンテンツが表示できないことを示すエラーが発生します。

たとえば、次のアイテムをリンクできます。

  • クラスに対する変更を示すには、クラスを示すノードに、作業項目、ドキュメント、または別の .dgml ファイルの URL をリンクします。

  • ソフトウェアの論理アーキテクチャのレイヤーを表すグループ ノードにレイヤー図をリンクします。

  • インターフェイスを公開するコンポーネントに関する詳細情報を表示するには、そのインターフェイスを示すノードにコンポーネント図をリンクします。

  • Team Foundation Server の作業項目やバグにノード、またはノードに関する情報にリンクします。

アイテムからノードへのリンクを設定するには

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

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

  2. 次の表にあるタスクのいずれかを実行します。

    リンク対象

    実行する手順

    単一のアイテム

    • <Node/> または <Link/> の要素では、項目の位置を指定するには Reference の属性を追加します。

      メモメモ
      要素ごとの Reference の 1 種類の属性のみを使用できます。

    次に例を示します。

    <Nodes>
       <Node Id="MyNode" Reference="MyDocument.txt" />
    </Nodes>
    <Properties>
       <Property Id="Reference" Label="My Document" DataType="System.String" IsReference="True" />
    </Properties>

    複数のアイテム

    1. <Node/> または <Link/> の要素に、各参照の位置を指定する新しい属性を追加します。

    2. <Properties> セクションで、次の操作を行います。

      1. 新しい種類の参照ごとに <Property/> 要素を追加します。

      2. 新しい参照属性の名前に Id 属性を設定します。

      3. IsReference の属性を追加し、True に項目の [ジャンプ] のショートカット メニューの参照が表示されるように設定します。

      4. 項目の [ジャンプ] のショートカット メニューの表示テキストを指定するには Label の属性を使用します。

    次に例を示します。

    <Nodes>
       <Node Id="MyNode" SequenceDiagram="MySequenceDiagram.sequencediagram" ActiveBugs="MyActiveBugs.wiq"/>
    </Nodes>
    <Properties>
       <Property Id="SequenceDiagram" Label="My Sequence Diagram" DataType="System.String" IsReference="True" />
       <Property Id="ActiveBugs" Label="Active Bugs" DataType="System.String" IsReference="True" />
    </Properties>

    グラフでは、ノードの名前は下線付きで表示されます。ノードまたはリンクのショートカット メニューを開いたとき、選択するためのリンク項目を含む [ジャンプ] のショートカット メニューが表示されます。

  3. 参照で文字列を繰り返し使用する代わりに、ReferenceTemplate 属性を使用して、複数の参照で使用する共通の文字列 (URL など) を指定します。

    ReferenceTemplate 属性では、参照の値のプレースホルダーを指定します。次の例では、ReferenceTemplate 属性の {0} プレースホルダーは、<Node/> 要素の MyFirstReference 属性および MySecondReference 属性の値に置換され、完全なパスが生成されます。

    <Nodes>
       <Node Id="MyNode" MyFirstReference="MyFirstDocument" MySecondReference="MySecondDocument"/>
       <Node Id="MySecondNode" MyFirstReference="AnotherFirstDocument" MySecondReference="AnotherSecondDocument"/>
    </Nodes>
    <Properties>
       <Property Id="MyFirstReference" Label="My First Document" DataType="System.String" IsReference="True" ReferenceTemplate="http://www.Fabrikam.com/FirstDocuments/{0}.asp"/>
       <Property Id="MySecondReference" Label="My Second Document" DataType="System.String" IsReference="True" ReferenceTemplate=" http://www.Fabrikam.com/SecondDocuments/{0}.asp"/>
    </Properties>
    
  4. グラフから参照先の項目を表示するには、ノードまたはリンクのショートカット メニューを開きます。次に [ジャンプ] および項目を選択します。

よく使用されるパスのエイリアスを作成する

よく使用されるパスをエイリアスに置き換えると、.dgml ファイルのサイズを小さくして、ファイルの読み込みまたは保存に必要な時間を短縮することができます。エイリアスを作成するには、.dgml ファイルの末尾に <Paths></Paths> セクションを追加します。このセクションには、パスのエイリアスを定義する <Path/> 要素を追加します。

<Paths>
   <Path Id="MyPathAlias" Value="C:\...\..." />
</Paths>

.dgml ファイル内の要素からエイリアスを参照するには、<Path/> 要素の Id 値をドル記号 ($) とかっこ (()) で囲みます。

<Nodes>
   <Node Id="MyNode" Reference="$(MyPathAlias)MyDocument.txt" />
</Nodes>
<Properties>
   <Property Id="Reference" Label="My Document" DataType="System.String" IsReference="True" />
</Properties>

Directed Graph Markup Language (DGML) について

DGML では、単純な XML を使用して、循環および非循環の有向グラフを記述します。有向グラフは、リンク (エッジ) によって接続されている一連のノードです。ノードとリンクを使用すると、ネットワーク構造 (ソフトウェア プロジェクトの要素など) を表すことができます。情報の視覚化、複雑性解析の実行、または単に有向グラフの参照および編集を行うには、DGML を使用します。

ノードとリンクはグラフ要素、または単に要素と呼ばれます。DGML で使用される要素の種類を次の表に示します。

[!メモ]

.dgml ファイルを編集するときは、各要素とその値に使用できる属性が IntelliSense によって識別されます。属性で色を指定するには、一般的な色の名前 ("Blue" など) または ARGB 16 進値 ("#ffa0b1c3" など) を使用してください。DGML では、WPF (Windows Presentation Foundation) 色定義形式の小さいサブセットを使用します。詳細については、「Colors クラス」を参照してください。

要素

サンプルの形式

<DirectedGraph></DirectedGraph>

この要素は、有向グラフ (.dgml) ドキュメントのルート要素です。他のすべての DGML 要素は、この要素のスコープ内に表示されます。

追加できる属性 (省略可能) は次のとおりです。

  • Background - グラフの背景色。

  • BackgroundImage - グラフの背景として使用するイメージ ファイルの場所。

  • GraphDirection - グラフがツリー レイアウト (Sugiyama) に設定された場合に、ほとんどのリンクが指定方向 (TopToBottom、BottomToTop、LeftToRight、または RightToLeft) に向かうようにノードを配置します。「依存関係グラフの参照および再配置」を参照してください。

  • Layout - グラフのレイアウトを None、Sugiyama (ツリー レイアウト)、ForceDirected (クイック クラスター)、または DependencyMatrix に設定します。「依存関係グラフの参照および再配置」を参照してください。

  • NeighborhoodDistance - グラフがツリー レイアウトまたはクイック クラスター レイアウトに設定された場合に、選択したノードから指定されたリンク数 (1 ~ 7) 離れたノードのみ表示します。「依存関係グラフの参照および再配置」を参照してください。

  • Title - グラフの名前。

  • ZoomLevel - グラフを最初に表示する場合に使用されるズーム レベル。浮動小数点値を指定します。1 は 100% です。グラフをウィンドウ サイズに合わせるには、Fit を使用します。

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph Title="DrivingTest" Background="Blue" xmlns="https://schemas.microsoft.com/vs/2009/dgml">
   <Nodes>
      ...
   </Nodes>
   <Links>
      ...
   </Links>
   <Categories>
      ...
   </Categories>
   <Properties>
      ...
   </Properties>
</DirectedGraph>

<Nodes></Nodes>

この省略可能な要素には、グラフ上のノードを定義する <Node/> 要素の一覧が含まれます。詳細については、<Node/> 要素を参照してください。

メモメモ
<Link/> 要素内の未定義のノードを参照する場合、グラフでは <Node/> 要素が自動的に作成されます。
<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph Title="DrivingTest" xmlns="https://schemas.microsoft.com/vs/2009/dgml">
   <Nodes>
      <Node ... />
   </Nodes>
   <Links>
      <Link ... />
   </Links>
</DirectedGraph>

<Node/>

この要素は、単一のノードを定義します。この要素は、<Nodes><Nodes/> 要素の一覧内に表示されます。

この要素には、次の属性が必要です。

  • Id - ノードの一意の名前。Label 属性が別途指定されていない場合は、Label 属性の既定値です。この名前は、名前を参照するリンクの Source 属性または Target 属性と一致する必要があります。

追加できる属性 (省略可能) の一部を次に示します。

  • Label - ノードの表示名。

  • スタイル属性。ノードおよびリンクにカスタム スタイルを適用します。を参照してください。

  • Category - この属性を共有する要素を識別するカテゴリの名前。詳細については、<Category/> 要素を参照してください。

  • Property - プロパティ値が同じ要素を識別するプロパティの名前。詳細については、<Property/> 要素を参照してください。

  • Group - ノードに他のノードが含まれている場合は、この属性を Expanded または Collapsed に設定して、そのコンテンツの表示と非表示を切り替えます。Category="Contains" 属性を含み、親ノードをリンク元ノード、子ノードをリンク先ノードとして指定する <Link/> 要素が必要です。ノードをグループに編成します。を参照してください。

  • Visibility - この属性を Visible、Hidden、または Collapsed に設定します。System.Windows.Visibilityが使用されます。ノードを非表示または表示]を参照してください。

  • Reference - この属性をドキュメントまたは URL へのリンクに設定します。ノードに項目をリンクを参照してください。

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph Title="DrivingTest" xmlns="https://schemas.microsoft.com/vs/2009/dgml">
   <Nodes>
      <Node Id="Driver" Label="Student" Category="Person" />
      <Node Id="Passenger" Label="Instructor" Category="Person" />
      <Node Id="Car" Label="Car" Category="Automobile" />
      <Node Id="Truck" Label="Truck" Category="Automobile" />
   </Nodes>
   <Links>
      <Link ... />
   </Links>
   <Categories>
      <Category Id="Person" Background="Orange" />
      <Category Id="Automobile" Background="Yellow"/>
   </Categories>
</DirectedGraph>

<Links></Links>

この要素には、ノード間のリンクを定義する <Link> 要素の一覧が含まれます。詳細については、<Link/> 要素を参照してください。

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph Title="DrivingTest" xmlns="https://schemas.microsoft.com/vs/2009/dgml">
   <Links>
      <Link ... />
   </Links>
</DirectedGraph>

<Link/>

この要素は、リンク元ノードをリンク先ノードに接続する単一のリンクを定義します。この要素は、<Links></Links> 要素の一覧内に表示されます。

メモメモ
この要素が未定義のノードを参照する場合、グラフ ドキュメントでは、指定された属性を含むノードが自動的に作成されます。

この要素には、次の属性が必要です。

  • Source - リンク元ノード。

  • Target - リンク先ノード。

追加できる属性 (省略可能) の一部を次に示します。

  • Label - リンクの表示名。

  • スタイル属性。ノードおよびリンクにカスタム スタイルを適用します。を参照してください。

  • Category - この属性を共有する要素を識別するカテゴリの名前。詳細については、<Category/> 要素を参照してください。

  • Property - プロパティ値が同じ要素を識別するプロパティの名前。詳細については、<Property/> 要素を参照してください。

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph Title="DrivingTest" xmlns="https://schemas.microsoft.com/vs/2009/dgml">
   <Nodes>
      <Node Id="Driver" Label="Student" Category="Person" />
      <Node Id="Passenger" Label="Instructor" Category="Person" />
      <Node Id="Car" Label="Car" Category="Automobile" />
      <Node Id="Truck" Label="Truck" Category="Automobile" />
   </Nodes>
   <Links>
      <Category Id="Person" Background="Orange" />
      <Category Id="Automobile" Background="Yellow"/>
      <Link Source="Driver" Target="Car" Label="Passed" Stroke="Black" Background="Green" Category="PassedTest" />
      <Link Source="Driver" Target="Truck" Label="Failed" Stroke="Black" Background="Red" Category="PassedTest" />
   </Links>
</DirectedGraph>

<Categories></Categories>

この要素には、<Category/> 要素の一覧が含まれます。詳細については、<Category/> 要素を参照してください。

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph Title="DrivingTest" xmlns="https://schemas.microsoft.com/vs/2009/dgml">
   <Categories>
       <Category ... />
   </Categories>
</DirectedGraph>

<Category/>

この要素は、この属性を共有する要素を識別するために使用される Category 属性を定義します。Category 属性を使用すると、グラフ要素の整理、継承による共有属性の提供、または追加のメタデータの定義が可能になります。

この要素には、次の属性が必要です。

  • Id - カテゴリの一意の名前。Label 属性が別途指定されていない場合は、Label 属性の既定値です。

追加できる属性 (省略可能) の一部を次に示します。

  • Label - カテゴリのわかりやすい名前。

  • BasedOn - 現在の要素の <Category/> の継承元の親カテゴリ。

    この要素の例では、FailedTest カテゴリは、PassedTest カテゴリから Stroke 属性を継承します。ノードおよびリンクにカテゴリを再配置の階層構造のカテゴリを作成するには" "を参照してください。

また、カテゴリでは、グラフに表示されるノードおよびリンクの外観を制御するいくつかの基本的なテンプレート動作が指定されます。ノードおよびリンクにカスタム スタイルを適用します。を参照してください。

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph Title="DrivingTest" xmlns="https://schemas.microsoft.com/vs/2009/dgml">
   <Nodes>
      <Node Id="Driver" Label="Driver" Category="Person" />
      <Node Id="Car" Label="Car" Category="Automobile" />
      <Node Id="Truck" Label="Truck" Category="Automobile" />
      <Node Id="Passenger" Category="Person" />
   </Nodes>
   <Links>
      <Link Source="Driver" Target="Car" Label="Passed" Category="PassedTest" />
      <Link Source="Driver" Target="Truck" Label="Failed" Category="FailedTest" />
   </Links>
   <Categories>
      <Category Id="Person" Background="Orange" />
      <Category Id="Automobile" Background="Yellow"/>
      <Category Id="PassedTest" Label="Passed" Stroke="Black" Background="Green" />
      <Category Id="FailedTest" Label="Failed" BasedOn="PassedTest" Background="Red" />
   </Categories>
</DirectedGraph>

<Properties></Properties>

この要素には、<Property/> 要素の一覧が含まれます。詳細については、<Property/> 要素を参照してください。

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph Title="DrivingTest" xmlns="https://schemas.microsoft.com/vs/2009/dgml">
   <Properties>
       <Property ... />
   </Properties>
</DirectedGraph>

<Property/>

この要素は、カテゴリおよびその他のプロパティを含む任意の DGML 要素または属性に値を代入する際に使用できる Property 属性を定義します。

この要素には、次の属性が必要です。

  • Id - プロパティの一意の名前。Label 属性が別途指定されていない場合は、Label 属性の既定値です。

  • DataType - プロパティに格納されるデータの型。

[プロパティ] ウィンドウにプロパティを表示する場合は、Label プロパティを使用して、対象のプロパティの表示名を指定します。

ノードおよびリンクにプロパティを再配置を参照してください。

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph Title="DrivingTest" xmlns="https://schemas.microsoft.com/vs/2009/dgml">
   <Nodes>
      <Node Id="Driver" Label="Driver" Category="Person" DrivingAge="18"/>
      <Node Id="Car" Label="Car" Category="Automobile" />
      <Node Id="Truck" Label="Truck" Category="Automobile" />
      <Node Id="Passenger" Category="Person" />
   </Nodes>
   <Links>
      <Link Source="Driver" Target="Car" Label="Passed" Category="PassedTest" />
      <Link Source="Driver" Target="Truck" Label="Failed" Category="FailedTest" />
   </Links>
   <Categories>
      <Category Id="Person" Background="Orange" />
      <Category Id="Automobile" Background="Yellow"/>
      <Category Id="PassedTest" Label="Passed" Stroke="Black" Background="Green" />
      <Category Id="FailedTest" Label="Failed" BasedOn="PassedTest" Background="Red" />
   </Categories>
   <Properties>
       <Property Id="DrivingAge" Label="Driving Age" DataType="System.Int32" />
   </Properties>
</DirectedGraph>

参照

概念

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

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