依存関係グラフの編集およびカスタマイズ
基になるコードに影響を与えずに依存関係グラフを編集できます。これは、キー項目に重点を置くか、コードに関するアイデアをやり取りする場合に便利です。たとえば、関心領域を強調表示するには、ノードを選択し、フィルター処理、ノードとリンクのスタイルを非表示または削除のノードに変更し、プロパティ、カテゴリ、またはグループを使用してノードを編成できます。
グラフの Directed Graph Markup Language (.dgml) ファイルを編集して、さらにカスタマイズできます。たとえば、またはドキュメント、URL、またはそのほかのグラフのような項目にリンクされたノード、ノードに再配置するにはカスタム スタイルを、プロパティおよびカテゴリとリンク指定するには、要素を編集できます。
[!メモ]
Visual Studio は、を削除して、.dgml ファイルを保存すると、未使用の DGML 要素と属性をクリーンアップします。また、新しいリンクを手動で追加するとノードの要素が自動的に作成されます。.dgml ファイルを保存すると、要素に追加した属性が、自身をアルファベット順に並べ替える場合があります。DGML 要素の詳細については、「Directed Graph Markup Language (DGML) について」を参照してください。
要件
Visual Studio Ultimate、Visual Studio Premium、または Visual Studio Professional
依存関係グラフを作成するには、Visual Studio Ultimate が必要です。「依存関係グラフでのコード依存関係の視覚化」を参照してください。
このトピックの内容
ノードまたはリンク
名前の変更のノードまたはリンク
非表示を切り替えのノードとリンク
追加のノードとリンク
グラフに追加のコメント
ノードの削除
グループ ノード
マージ グラフ
グラフのスタイルを変更する
ノードを変更するか、スタイルのリンク
一方のグラフから他方のグラフにスタイルをコピーする
ノードおよびリンクにプロパティを割り当てる
ノードおよびリンクにカテゴリを割り当てる
ノードまたはリンクに項目をリンク
よく使用されるパスのエイリアスを作成する
ノードまたはリンク
目的 |
実行する手順 |
---|---|
すべての選択されていないノードを選択する |
選択したノードのショートカット メニューを開きます。[選択]、[選択範囲の切り替え] を選択します。 |
選択した物にリンクされて追加のノードを選択します。 |
選択したノードのショートカット メニューを開きます。次の [選択] といずれかを選択する:
|
名前の変更のノードまたはリンク
ノードまたはリンクを選択します。F2 キーを押します。エディット ボックスが表示されたら、ノードまたはリンクの名前を変更します。
ラベルが表示されている場合は、ラベルを選択します。
非表示を切り替えのノードとリンク
ノードを非表示にすると、配置アルゴリズムからのこれらを保持します。既定では、グループ間リンクは非表示になります。グループ間リンクはグループ間のノードを接続する個々のリンクです。グループを折りたたむ場合、グラフではグループ間の単一のリンクにすべてのグループ間リンクが集計されます。グループ内のグループとノードを展開すると、グループ間リンクはそのグループに表示され、依存関係が表示されます。
注意 |
---|
Visual Studio の Visual Studio Premium、Professional を使用するユーザーと最後の Visual Studio で作成されたグラフを共有する前に、unhide にノードを確認し、他に参照するグループ間リンクは。それ以外の場合は、これらのユーザーはそれらの項目に unhide できません。 |
ノードを表示する非表示にしたり、
目的 |
実行する手順 |
---|---|
選択したノードを非表示にする |
|
選択されていないノードを非表示にする |
|
非表示のノードを表示します |
|
.dgml ファイルを編集してノードを非表示にします。 |
|
リンクの表示/非表示を切り替えるには
目的 |
グラフ ツール バーで、[グラフでのリンクの描画方法を変更します] のリストを開くか、グラフ ショートカット メニューを開きます。 :選択します。 |
---|---|
グループ間リンクを常時表示する |
[すべてのグループ間リンクを表示] これは、グループ間の集約されたリンクを非表示にします。 |
選択したノードのグループ間リンクのみを表示する |
[選択したノードのグループ間リンクを表示] |
グループ間リンクを常時非表示にする |
グループ間リンクを非表示にします。 |
すべてのリンクを非表示にする (またはすべてのリンクを表示する) |
[すべてのリンクを非表示] すべてのリンクを表示するには、このモードをオフに [すべてのリンクの非表示] をもう一度選択します。 |
追加のノードとリンク
新しい未定義のノードを追加するには |
実行する手順 |
---|---|
現在のポインターの位置 |
グラフの場所を新しいノードを配置する場所を選択します。[挿入] を押します。 |
選択したノードとそのリンク |
|
その現在フォーカスがある既存のノードにリンク |
まず、にあるフォーカスをリンクするノードまでの [タブ] を押します。[Alt] + [Shift] + [挿入] を押します。 |
ノードを追加するには |
実行する手順 |
---|---|
ソリューション項目 |
|
グラフのノードに関連する項目 |
ノードのショートカット メニューを開きます。リレーションシップを [表示] と目的の種類をクリックします。 アセンブリの場合、選択する:
クラスには、選択する:
メソッドの場合、選択する:
フィールドに、選択する:
|
.NET のコンパイル済みアセンブリ (.dll または .exe) または binary |
グラフの項目と関係を検索、ドラッグに [アーキテクチャ エクスプローラー] を使用します。 |
既存のノード間にリンクを追加するには
ソースのノードを選択します。
ノードの上に表示されるツール バーの開始。
ツール バーで、[Create new link from this node to which ever node that you click on next] を選択します。ターゲットのノードを選択します。
リンクは 2 種類のノード間に表示されます。
グラフに追加のコメント
リンク コメントを追加するノードを選択します。
ノードの上に表示されるツール バーの開始。
ツール バーで、[新しいコメント ノードと選択したノードへの新しいリンクを作成します] を選択します。
、コメントを入力します。新しい行に入力するには、[SHIFT] + [Enter] を押します。
ノードの削除
基になるコードに影響を与えずにグラフからノードを削除できます。ノードを削除するには、ノードをクリックし、[削除] キーを押します。ノードを削除すると、定義は、DGML (.dgml) ファイルから削除されます。
グループからノードを削除すると、[子の再フェッチ] のボタンは 、グループ内に表示されます。欠落したノードを取得するには、[子の再フェッチ]を選択します。DGML で作成したグラフは、未定義のノードを編集するか、最終的な旧バージョンの Visual Studio を使用して追加この機能をサポートしていません。
注意 |
---|
Visual Studio の Visual Studio Premium、Professional を使用するユーザーと最後の Visual Studio を使用して作成されたグラフを共有する前に、他に参照するすべてのノード グラフでは表示されませんが、であることを確認してください。それ以外の場合は、これらのユーザーが削除したノードを取得できません。 |
グループ ノード
目的 |
実行する手順 |
---|---|
グループ ノードまたはリーフ ノードとしてコンテナーのノードを表示します |
リーフ ノードとしてコンテナー ノードを表示するには、ノードを選択します。選択したコントロールのショートカット メニューを開きます。[グループ]、[リーフに変換] を選択します。 グループ ノードとしてコンテナー ノードを表示するには、ノードを選択します。選択したコントロールのショートカット メニューを開きます。[グループ]、[グループに変換] を選択します。 グループ ノードとしてすべてのリーフ ノードを表示するには、グラフのショートカット メニューを開きます。[グループ]、[グループ化] を選択します。 リーフ ノードとしてすべてのグループ ノードを表示するには、グラフのショートカット メニューを開きます。[グループ]、[グループ化の解除] を選択します。 |
グループにノードを追加します。 |
グループにノードをドラッグします。 またはグループからノードをドラッグします。 |
非グループ化のノードを追加します。 |
ノードをグループに変換できます。ターゲットのノードをドラッグします。 |
選択したノードをグループ化 |
|
特定のカテゴリまたは特定のプロパティを持つノードをグループ化 |
|
プロパティ値に基づいてノードをグループ化する |
|
グループを削除する |
削除するグループを選択します。選択したコントロールのショートカット メニューを開きます。[グループ]、[グループの削除] を選択します。 |
親グループから祖父母グループにノードを移動する (祖父母グループがない場合は、グループの外部にノードを移動する) |
移動するノードを選択します。選択したコントロールのショートカット メニューを開きます。[グループ]、[親から削除] を選択します。 |
グラフの .dgml を編集してノードをグループ化するにはファイル。
グループ ノードをに変換するには、ノードのショートカット メニューを開きます。[ジャンプ]、[DGML] を選択します。
Visual Studio は、グラフの .dgml ファイルを開き、そのノードの <Node/> の要素が強調表示されます。
または
新しいグループを追加するには:
グラフの空白領域のショートカット メニューを開きます。[ジャンプ]、[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 属性の詳細については、「ノードおよびリンクにカテゴリを割り当てる」を参照してください。
マージ グラフ
グラフのノード間をコピーして貼り付けることによってグラフをマージできます。ノードの識別子が一致した場合、ノードを貼り付けることはマージのように機能します。このタスクを簡単にするためには、各アセンブリまたは binary の完全パスはマージする各グラフの同じになるように、同じフォルダーに視覚化する binary またはすべてのアセンブリを設定します。
また、これらの手順 1 のいずれかを実行して、視覚化する binary またはアセンブリの単一グラフを作成できます:
同じアセンブリまたは binary をグラフにドラッグします。
または
開いている [アーキテクチャ エクスプローラー]。[ファイル システム] の下で参照するには [ファイルの選択] を選択して、アセンブリまたは binary を開きます。グラフを作成するには、視覚化する特定の項目を選択します。終了したら、[アーキテクチャ エクスプローラー] のツール バーの [Create a new graph document from all the selected nodes] を選択します。
グラフのスタイルを変更する
グラフの .dgml ファイルを編集することで、グラフの背景色および境界線の色を変更できます。ノードおよびリンクのスタイルを変更する方法については、「ノードおよびリンクのスタイルを変更する」を参照してください。
グラフからショートカット メニューを開きます。[ジャンプ]、[DGML] を選択します。
Visual Studio は、グラフの .dgml ファイルが開きます。
<DirectedGraph> 要素に次の任意の属性を追加して、グラフのスタイルを変更します。
変更対象
追加する属性
背景色
Background="ColorNameOrHexadecimalValue"
境界線の色
Stroke="StrokeValue"
次に例を示します。
<DirectedGraph Background="Green" xmlns="https://schemas.microsoft.com/vs/2009/dgml" > ... ... </DirectedGraph>
ノードおよびリンクのスタイルを変更する
ノードのアイコン、およびノードとリンクの色を変更できます。定義済みの色およびアイコンを使用することも、グラフの .dgml ファイルを編集してカスタム カラーおよびカスタム アイコンを指定することもできます。ノードおよびリンクにカスタム スタイルを適用します。を参照してください。
たとえば、色を選択することで、特定のカテゴリまたは特定のプロパティを持つノードおよびリンクを強調して表示できます。これにより、グラフの特定の領域を特定し、目立たせることができます。
特定のカテゴリまたは特定のプロパティを持つノードに定義済みの色またはアイコンを適用するには
[凡例] ボックスが表示されていない場合は、グラフのショートカット メニューを開きます。[凡例の表示] を選択します。
[凡例] ボックスで、ノードのカテゴリまたはプロパティがリストに表示されているかどうかを確認します。
リストにカテゴリまたはプロパティが含まれていない場合は、[凡例] ボックスの [+] を、[ノード カテゴリ] または [ノード プロパティ] およびカテゴリまたはプロパティをクリックします。
カテゴリまたはプロパティが [凡例] ボックスに表示されます。
[!メモ]
カテゴリを作成してノードに割り当てる方法については、「ノードおよびリンクにカテゴリを割り当てる」を参照してください。プロパティを作成してノードに割り当てる方法については、「ノードおよびリンクにプロパティを割り当てる」を参照してください。
[凡例] ボックスで、カテゴリまたはプロパティの横のドロップダウン リストを開きます。
次の表を使用して、変更するスタイルを選択します。
変更対象
Choose
背景色
背景
外枠の色
線
テキストの色
Foreground
Icon
[アイコン]
[カラー セット ピッカー] ボックスは、色ように見えることがあります (またはアイコン) を選択できます。
[カラー セット ピッカー] のダイアログ ボックスで、次のいずれかを実行します:
適用対象
実行する手順
色 (またはアイコンの設定
[色の選択] (または アイコン) [設定] リストを開きます。色のセットをクリックします (またはアイコン)。
既定の色 (またはアイコン) に [色の選択] (アイコン) [設定] の一覧で元に戻すには、Noneを選択します。
特定の色 (またはアイコン)
カテゴリまたはプロパティ値のリストを開きます。色選択します (またはアイコン)。
[!メモ]
[凡例] ボックス内のスタイルを再整列、削除、または一時的に無効化できます。凡例ボックスを変更します。を参照してください。
特定のカテゴリまたは特定のプロパティを持つリンクに定義済みの色を適用するには
[凡例] ボックスが表示されていない場合は、グラフのショートカット メニューを開きます。[凡例の表示] を選択します。
[凡例] ボックスで、カテゴリまたはプロパティがリストに表示されているかどうかを確認します。
リストにカテゴリまたはプロパティが含まれていない場合は、[凡例] ボックスの [+] を、[リンク カテゴリ] または [リンク プロパティ] およびカテゴリまたはプロパティをクリックします。
カテゴリまたはプロパティが [凡例] ボックスに表示されます。
[!メモ]
カテゴリを作成してリンクに割り当てる方法については、「ノードおよびリンクにカテゴリを割り当てる」を参照してください。プロパティを作成してリンクに割り当てる方法については、「ノードおよびリンクにプロパティを割り当てる」を参照してください。
[凡例] ボックスで、カテゴリまたはプロパティの横のリストを開きます。
リンクのアウトラインと矢じりの色を変更する [ストローク] を選択します。
[カラー セット ピッカー] ボックスは、色を選択できるようになります。
[カラー セット ピッカー] ボックスで、次のいずれかを実行します:
適用対象
実行する手順
色のセット
[色の選択][設定] の一覧を表示します。色のセットを選択します。
既定の色に、[カラー設定の選択] の一覧で元に戻すには、Noneを選択します。
特定の色
色を選択するために、型またはプロパティ値のリストを開きます。
[!メモ]
[凡例] ボックス内のスタイルを再整列、削除、または一時的に無効化できます。凡例ボックスを変更します。を参照してください。
ノードおよびリンクにカスタム スタイルを適用する
次のアイテムにカスタム スタイルを適用できます。
単一のノードおよびリンク
ノードのグループおよびリンクのグループ
特定の条件に基づくノードのグループおよびリンクのグループ
単一のノードにカスタム スタイルを適用するには
スタイルをカスタマイズするノードのショートカット メニューを開きます。[ジャンプ]、[DGML] を選択します。
Visual Studio は、グラフの .dgml ファイルを開き、そのノードの <Node/> の要素が強調表示されます。
<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>
単一のリンクにカスタム スタイルを適用するには
グラフで、リンクの上にマウス ポインターを移動します。ツールヒントが表示され、リンク元ノードとリンク先ノードを確認します。(キーボード: Enter キータブ フォーカスまでリンクになります)。
グラフのショートカット メニューを開きます。[ジャンプ]、[DGML] を選択します。
Visual Studio は、グラフの .dgml ファイルが開きます。
リンク元ノードとリンク先ノードの両方の名前を含む <Link/> 要素を探します。
<Link/> 要素に次の属性を追加して、スタイルをカスタマイズします。
変更対象
追加する属性
アウトラインと矢じりの色
Stroke="ColorNameOrHexadecimalValue"
外枠の太さ
StrokeThickness="StrokeValue"
外枠のスタイル
StrokeDashArray="StrokeArrayValues"
次に例を示します。
<Links> <Link Source="MyFirstNode" Target="MySecondNode" Background="Green" Stroke="#FF000000" StrokeDashArray="2,2"/> </Links>
ノードのグループまたはリンクのグループにカスタム スタイルを適用するには
ノードまたはリンクに、目的のカテゴリまたはプロパティを割り当てます。
ヒント 多くのノードまたはリンクにわたってスタイルを繰り返すことがある場合、カテゴリをこれらのノードまたはリンクに適用し、そのカテゴリにスタイルを適用することを検討する必要があります。詳細については、「ノードおよびリンクにカテゴリを割り当てる」および「ノードおよびリンクにプロパティを割り当てる」を参照してください。
グラフのショートカット メニューを開きます。[ジャンプ]、[DGML] を選択します。
Visual Studio は、グラフの .dgml ファイルが開きます。
<Styles></Styles> 要素が存在しない場合、<Links></Links> 要素の後の <DirectedGraph></DirectedGraph> 要素の下位に、この要素を追加します。
<Styles></Styles> 要素で、<Style/> 要素の下位に次の属性を指定します。
TargetType="Node | Link | Graph"
GroupLabel="NameInLegendBox"
ValueLabel="NameInStylePickerBox"
全種類の対象にカスタム スタイルを適用する場合、条件は使用しません。
ノードのグループまたはリンクのグループに条件付きスタイルを適用するには
<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/>の複数の要素を指定できます。
<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>
次の表に、実際に使用できる条件例をいくつか示します。
[凡例] ボックスを変更する
[凡例] ボックス内のスタイルを、次のように再整列、削除、または一時的に無効化できます。
[凡例] ボックスのスタイルのショートカット メニューを開きます。
次のいずれかのタスクを実行します。
目的
Choose
アイテムを上へ移動する
[上へ移動]
アイテムを下へ移動する
[下へ移動]
アイテムを削除する
削除
アイテムを無効にする
[無効化]
アイテムを再度有効にする
[有効化]
一方のグラフから他方のグラフにスタイルをコピーする
[凡例] ボックスがソース グラフに表示されることを確認します。これが表示されない場合は、ソース グラフの空白領域のショートカット メニューを開きます。[凡例の表示] を選択します。
[凡例] ボックスのショートカット メニューを開きます。[凡例のコピー] を選択します。
ターゲット グラフに凡例を貼り付けます。
ノードおよびリンクにプロパティを割り当てる
ノードおよびリンクにプロパティを割り当てることで、ノードおよびリンクを編成できます。たとえば、特定のプロパティを持つノードを選択して、それらのグループ化、スタイルの変更、または非表示化を実行できます。
ノードにプロパティを割り当てるには
ノードのショートカット メニューを開きます。[ジャンプ]、[DGML] を選択します。
Visual Studio は、グラフの .dgml ファイルを開き、そのノードの <Node/> の要素が強調表示されます。
<Node/> 要素で、プロパティの名前とその値を指定します。次に例を示します。
<Nodes> <Node Id="MyNode" MyPropertyName="PropertyValue" /> </Nodes>
<Property/> 要素を <Properties> セクションに追加して、属性 (要素の表示名、データ型など) を指定します。
<Properties> <Property Id="MyPropertyName" Label="My Property" DataType="System.DataType"/> </Properties>
リンクにプロパティを割り当てるには
グラフで、リンクの上にマウス ポインターを移動します。ツールヒントが表示され、リンク元ノードとリンク先ノードを確認します。(キーボード: フォーカスがリンクになるまで [タブ] を押します。)
グラフのショートカット メニューを開きます。[ジャンプ]、[DGML] を選択します。
Visual Studio は、グラフの .dgml ファイルが開きます。
リンク元ノードとリンク先ノードの両方の名前を含む <Link/> 要素を探します。
<Node/> 要素で、プロパティの名前とその値を指定します。次に例を示します。
<Links> <Link Source="MyFirstNode" Target="MySecondNode" MyPropertyName="PropertyValue" /> </Links>
<Property/> 要素を <Properties> セクションに追加して、属性 (要素の表示名、データ型など) を指定します。
<Properties> <Property Id="MyPropertyName" Label="My Property Name" DataType="System.DataType"/> </Properties>
ノードおよびリンクにカテゴリを割り当てる
ノードにカテゴリを割り当てることで、ノードを編成できます。たとえば、特定のカテゴリに属するノードを選択して、それらのグループ化、スタイルの変更、または非表示化を実行できます。特定のカテゴリを持つリンクは強調表示できます。詳細については、以下のセクションを参照してください。
グループ ノード
ノードおよびリンクのスタイルを変更する
ノードの表示/非表示を切り替える
ノードにカテゴリを割り当てるには
- 定義済みのカテゴリを、[分類 1] などの再配置は、を開いてノードのショートカット メニュー。[分類] および定義済みカテゴリを選択します。
または
カスタム カテゴリを作成して割り当てるには
- 並べ替えるノードを選択します。[プロパティ] のウィンドウを開くに [F4] を押します。ノードの [新しいカテゴリ] のプロパティのカテゴリの名前を入力します。ENTER キーを押します。
または
ノードのショートカット メニューを開きます。[ジャンプ]、[DGML] を選択します。
Visual Studio は、グラフの .dgml ファイルを開き、そのノードの <Node/> の要素が強調表示されます。
<Node/> 要素に Category 属性を追加して、カテゴリの名前を指定します。次に例を示します。
<Nodes> <Node Id="MyNode" Category="MyCategory" /> </Nodes>
<Categories> セクションに <Category/> 要素を追加することで、Label 属性を使用してそのカテゴリの表示テキストを指定できます。
<Categories> <Category Id="MyCategory" Label="My Category" /> </Categories>
リンクにカテゴリを割り当てるには
グラフで、マウス ポインターをリンクの上へ移動してツールヒントを表示し、リンク元ノードとリンク先ノードを確認します。(キーボード: フォーカスがリンクになるまで [タブ] を押します。)
グラフのショートカット メニューを開きます。[ジャンプ]、[DGML] を選択します。
Visual Studio は、グラフの .dgml ファイルが開きます。
リンク元ノードとリンク先ノードの両方の名前を含む <Link/> 要素を探します。
<Link/> 要素に Category 属性を追加して、カテゴリの名前を指定します。次に例を示します。
<Links> <Link Source="MyFirstNode" Target="MySecondNode" Category="MyCategory" </Links>
<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 ファイルの場所に対する相対パス、または絶対パスを使用できます。
注意 |
---|
相対パスを使用し、.dgml ファイルが別の位置に移動する場合は、それらのパスは、解決されません。リンク コンテンツを開き、表示しようとしてコンテンツが表示できないことを示すエラーが発生します。 |
たとえば、次のアイテムをリンクできます。
クラスに対する変更を示すには、クラスを示すノードに、作業項目、ドキュメント、または別の .dgml ファイルの URL をリンクします。
ソフトウェアの論理アーキテクチャのレイヤーを表すグループ ノードにレイヤー図をリンクします。
インターフェイスを公開するコンポーネントに関する詳細情報を表示するには、そのインターフェイスを示すノードにコンポーネント図をリンクします。
Team Foundation Server の作業項目やバグにノード、またはノードに関する情報にリンクします。
アイテムからノードへのリンクを設定するには
グラフでは、ノードのショートカット メニューを開きます。[ジャンプ]、[DGML] を選択します。
Visual Studio は、グラフの .dgml ファイルを開き、そのノードの <Node/> の要素が強調表示されます。
次の表にあるタスクのいずれかを実行します。
リンク対象
実行する手順
単一のアイテム
<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>
複数のアイテム
<Node/> または <Link/> の要素に、各参照の位置を指定する新しい属性を追加します。
<Properties> セクションで、次の操作を行います。
新しい種類の参照ごとに <Property/> 要素を追加します。
新しい参照属性の名前に Id 属性を設定します。
IsReference の属性を追加し、True に項目の [ジャンプ] のショートカット メニューの参照が表示されるように設定します。
項目の [ジャンプ] のショートカット メニューの表示テキストを指定するには 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>
グラフでは、ノードの名前は下線付きで表示されます。ノードまたはリンクのショートカット メニューを開いたとき、選択するためのリンク項目を含む [ジャンプ] のショートカット メニューが表示されます。
参照で文字列を繰り返し使用する代わりに、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>
グラフから参照先の項目を表示するには、ノードまたはリンクのショートカット メニューを開きます。次に [ジャンプ] および項目を選択します。
よく使用されるパスのエイリアスを作成する
よく使用されるパスをエイリアスに置き換えると、.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 クラス」を参照してください。