Modifier et personnaliser des graphiques de dépendance
Vous pouvez modifier des graphiques de dépendance sans affecter le code sous-jacent. Cela est utile lorsque vous souhaitez vous concentrer sur des éléments clé ou communiquer vos idées concernant le code. Par exemple, pour mettre en surbrillance des zones intéressantes, sélectionnez les nœuds et filtrez-les, modifiez le style des nœuds et des liens, masquez ou supprimez des nœuds, et organisez les nœuds à l'aide de propriétés, de catégories ou de groupes.
Vous avez la possibilité de personnaliser davantage un graphique en modifiant son fichier DGML (Directed Graph Markup Language). Par exemple, vous pouvez modifier des éléments pour spécifier des styles personnalisés, assigner des propriétés et des catégories à des nœuds et à des liens, et lier des nœuds à des éléments, tels que des documents, des URL ou d'autres graphiques.
Notes
Visual Studio nettoie tous les attributs et éléments DGML inutilisés en les supprimant lorsque vous enregistrez le fichier .dgml.Il crée également des éléments de nœud automatiquement lorsque vous ajoutez manuellement de nouveaux liens.Lorsque vous enregistrez le fichier .dgml, tous les attributs que vous avez ajoutés à un élément peuvent être réorganisés par ordre alphabétique.Pour plus d'informations sur les éléments DGML, consultez Fonctionnement du langage DGML (Directed Graph Markup Language).
Conditions requises
Visual Studio Ultimate, Premium Visual Studio ou Visual Studio Professional
Pour créer vos graphiques de dépendance, vous aurez besoin de Visual Studio Ultimate. Consultez Mapper les dépendances dans votre code dans des graphiques de dépendance.
Dans cette rubrique
Sélectionner les nœuds ou les liens
Renommer les nœuds ou les liens
Masquer ou afficher les nœuds et les liens
Ajouter des nœuds et des liens
Ajouter des commentaires au graphique
Supprimer les nœuds
Regrouper les nœuds
Fusionner les graphiques
Modification du style du graphique
Modifiez le nœud ou liez le style
Copie des styles d'un graphique dans un autre graphique
Assignation de propriétés aux nœuds et aux liens
Assignation de catégories aux nœuds et aux liens
Lier les éléments aux nœuds ou aux liens
Création d'alias pour les chemins d'accès fréquemment utilisés
Sélectionner les nœuds ou les liens
Pour |
Exécuter ces étapes |
---|---|
Sélectionner tous les nœuds non sélectionnés |
Ouvrez le menu contextuel pour les nœuds sélectionnés. Choisissez Sélectionner, Inverser la sélection. |
Sélectionnez les nœuds supplémentaires qui pointent vers ceux sélectionnés |
Ouvrez le menu contextuel pour les nœuds sélectionnés. Choisissez Sélectionner et une des opérations suivantes :
|
Renommer les nœuds ou les liens
Sélectionnez le nœud ou le lien. Appuyez sur F2. Lorsque la zone d'édition s'affiche, renommez le nœud ou le lien.
Si l'étiquette est visible, sélectionnez la.
Masquer ou afficher les nœuds et les liens
Masquer des nœuds les empêche de participer aux algorithmes de disposition. Par défaut, les liens entre les groupes sont masqués. Les liens entre les groupes sont des liens individuels qui relient vos nœuds entre différents groupes. Lorsque les groupes sont réduits, le graphique rassemble tous les liens entre les groupes au sein de liens uniques. Lorsque vous développez un groupe et sélectionnez des nœuds dans le groupe, les liens entre les groupes apparaissent et mettent en exergue les dépendances dans ce groupe.
Avertissement
Avant de partager un graphique créé dans Visual Studio Ultimate avec des personnes qui utilisent Visual Studio Premium ou Visual Studio Professional, veillez à afficher tous les nœuds et liens entre les groupes que vous souhaitez qu'elles puissent voir.Sinon, ces utilisateurs ne pourront pas afficher ces éléments.
Pour masquer ou afficher les nœuds
Pour |
Exécuter ces étapes |
---|---|
Masquer les nœuds sélectionnés |
|
Masquer les nœuds non sélectionnés |
|
Afficher les nœuds masqués |
|
Masquer des nœuds en modifiant le fichier .dgml |
|
Pour afficher ou masquer des liens
Pour |
Dans la barre d'outils du graphique, ouvrez la liste Modifier l'affichage des liens entre les groupes sur le graphique ou ouvrez le menu contextuel du graphique. Choisissez : |
---|---|
Afficher en permanence les liens entre les groupes |
Afficher tous les liens entre les groupes Cela masque les liens globaux entre les groupes. |
Afficher uniquement les liens entre les groupes pour les nœuds sélectionnés |
Afficher les liens entre les groupes sur les nœuds sélectionnés |
Masquer en permanence les liens entre les groupes |
Masquer tous les liens entre les groupes |
Masquer tous les liens (ou afficher tous les liens) |
Masquer tous les liens Pour afficher tous les liens, choisissez à nouveau Masquer tous les liens de façon à désactiver ce mode. |
Ajouter des nœuds et des liens
Pour ajouter un nouveau nœud non défini |
Exécuter ces étapes |
---|---|
À l'emplacement actuel du pointeur |
Sélectionnez un emplacement sur le graphique où placer le nouveau nœud. Appuyez sur Insérer. |
Cela insère un lien vers le nœud sélectionné |
|
Cela lie à un nœud existant avec le focus actuel |
Appuyez sur Tabulation jusqu'au nœud auquel vous voulez créer un lien avec focus. Appuyez sur Alt+Maj+Insérer. |
Pour ajouter des nœuds pour |
Exécuter ces étapes |
---|---|
Des éléments dans la solution |
|
Éléments liés aux nœuds sur le graphique |
Ouvrez le menu contextuel du nœud. Choisissez Afficher et le type de relation qui vous intéresse. Pour un assembly, choisissez :
Pour une classe, choisissez :
Pour une méthode, choisissez :
Pour un champ, choisissez :
|
Assemblys compilés .NET (.dll ou .exe) ou binaires |
Utilisez Navigateur de l'architecture pour rechercher et faire glisser des éléments et des relations vers le graphique. |
Pour ajouter un lien entre les nœuds existants
Sélectionnez le nœud source.
Une barre d'outils apparaît désormais au dessus du nœud.
Dans la barre d'outils, choisissez Créer un lien à partir de ce nœud vers le prochain nœud sur lequel vous cliquez . Sélectionnez le nœud cible.
Un lien apparaît entre les deux nœuds.
Ajouter des commentaires au graphique
Sélectionnez le nœud auquel vous souhaitez ajouter un commentaire lié.
Une barre d'outils apparaît désormais au dessus du nœud.
Dans la barre d'outils, choisissez Créer un nœud de commentaire avec un nouveau lien vers le nœud sélectionné .
Tapez vos commentaires. Pour taper sur une nouvelle ligne, appuyez sur Maj+Entrée.
Supprimer les nœuds
Vous pouvez supprimer des nœuds d'un graphique sans affecter le code sous-jacent. Pour supprimer un nœud, sélectionnez le nœud, puis appuyez sur la touche Supprimer. Lorsque vous supprimez des nœuds, leurs définitions sont supprimées du fichier DGML (.dgml).
Lorsque vous supprimez des nœuds d'un groupe, le bouton Récupérer à nouveau les enfants apparaît à l'intérieur du groupe. Pour récupérer les nœuds manquants, choisissez Récupérer à nouveau les enfants . Les graphiques créés en modifiant le DGML, en ajoutant les nœuds non définis ou en utilisant des versions antérieures de Visual Studio Ultimate ne prennent pas en charge cette fonction.
Avertissement
Avant de partager un graphique créé à l'aide de Visual Studio Ultimate avec des personnes qui utilisent Visual Studio Premium ou Visual Studio Professional, veillez à ce que les nœuds que vous souhaitez que les autres puissent voir sont bien visibles.Sinon, ces utilisateurs ne pourront pas récupérer les nœuds supprimés.
Regrouper les nœuds
Pour |
Exécuter ces étapes |
---|---|
Afficher les nœuds conteneurs comme nœuds de groupe ou nœuds feuille |
Pour afficher les nœuds conteneur comme des nœuds feuille, sélectionnez les nœuds. Ouvrez le menu contextuel de votre sélection. Choisissez Groupe, Convertir en feuille. Pour afficher les nœuds conteneur comme des nœuds de groupe, sélectionnez les nœuds. Ouvrez le menu contextuel de votre sélection. Choisissez Groupe, Convertir en groupe. Pour afficher tous les nœuds feuilles sous forme de nœuds de groupe, ouvrez le menu contextuel du graphique. Choisissez Groupe, Activer le regroupement. Pour afficher tous les nœuds de groupe sous forme de nœuds feuille, ouvrez le menu contextuel du graphique. Choisissez Groupe, Désactiver le regroupement. |
Ajouter un nœud à un groupe |
Faites glisser le nœud dans le groupe. Vous pouvez également faire glisser des nœuds en dehors d'un groupe. |
Ajouter un nœud à un nœud non-groupe |
Vous pouvez convertir n'importe quel nœud en groupe. Faites glisser le nœud dans le nœud cible. |
Regrouper les nœuds sélectionnés |
|
Regrouper les nœuds ayant certaines catégories ou propriétés |
|
Regrouper des nœuds en fonction de leurs valeurs de propriété |
|
Supprimer des groupes |
Sélectionnez le groupe ou les groupes que vous souhaitez supprimer. Ouvrez le menu contextuel de votre sélection. Choisissez Groupe, Supprimer le groupe. |
Supprimer des nœuds de leur groupe parent en les remontant jusqu'a leur grand-parent, ou à l'extérieur d'un groupe s'ils n'ont pas de groupe grand-parent |
Sélectionnez les nœuds que vous voulez déplacer. Ouvrez le menu contextuel de votre sélection. Choisissez Groupe, Supprimer du parent. |
Pour regrouper les nœuds en modifiant le fichier .dgml du graphique
Pour convertir un nœud en groupe, ouvrez le menu contextuel du nœud. Choisissez GoTo, DGML.
Visual Studio ouvre le fichier .dgml et met en surbrillance l'élément <Node/> de ce nœud.
ou
Pour ajouter à un nouveau groupe :
Ouvrez le menu contextuel d'une zone vierge du graphique. Choisissez GoTo, DGML.
Dans la section <Nodes>, ajoutez un nouvel élément <Node/>.
Dans l'élément <Node/>, ajoutez un attribut Group pour spécifier si le groupe apparaît développé ou réduit. Par exemple :
<Nodes> <Node Id="MyFirstGroup" Group="Expanded" /> <Node Id="MySecondGroup" Group="Collapsed" /> </Nodes>
Dans la section <Links>, vérifiez qu'un élément <Link/> ayant les attributs suivants existe pour chaque relation entre un nœud de groupe et ses nœuds enfants :
Attribut Source qui spécifie le nœud de groupe
Attribut Target qui spécifie le nœud enfant
Attribut Category qui spécifie une relation Contains entre le nœud de groupe et son nœud enfant
Par exemple :
<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>
Pour plus d'informations sur l'attribut Category, consultez Assignation de catégories aux nœuds et aux liens.
Fusionner les graphiques
Vous pouvez fusionner des graphiques en copiant et collant des nœuds entre les graphiques. Si les identificateurs de nœud correspondent, collez ensuite des fonctions de nœuds comme une opération de fusion. Pour simplifier cette tâche, placez tous les assemblys ou binaires que vous souhaitez visualiser dans le même dossier afin que le chemin d'accès complet de chaque assembly ou binaire soit le même pour chaque graphique que vous souhaitez fusionner.
Vous pouvez également créer un graphique unique pour les assemblys ou les binaires que vous souhaitez visualiser en effectuant l'une des étapes suivantes :
Faites glisser les assemblys ou les binaires vers le même graphique.
ou
Ouvrez le Navigateur de l'architecture. Sous Système de fichiers, choisissez Sélectionner les fichiers pour parcourir, sélectionner, puis ouvrir les assemblys ou les binaires. Pour affiner le graphique, sélectionnez les éléments spécifiques que vous souhaitez visualiser. Lorsque vous avez terminé, choisissez Créer un document de graphique dans la barre d'outils du Navigateur de l'architecture.
Modification du style du graphique
Vous pouvez changer la couleur de l'arrière-plan et de la bordure du graphique en modifiant son fichier .dgml. Pour modifier le style des nœuds et des liens, consultez Modification du style des nœuds et des liens.
Ouvrez le menu contextuel de la surface du graphique. Choisissez GoTo, DGML.
Visual Studio ouvre le fichier .dgml du graphique.
Dans l'élément <DirectedGraph>, ajoutez l'un des attributs suivants pour modifier son style :
Pour modifier l'élément suivant
Ajouter l'attribut suivant
Couleur d'arrière-plan
Background="ColorNameOrHexadecimalValue"
Couleur de la bordure
Stroke="StrokeValue"
Par exemple :
<DirectedGraph Background="Green" xmlns="https://schemas.microsoft.com/vs/2009/dgml" > ... ... </DirectedGraph>
Modification du style des nœuds et des liens
Vous pouvez modifier les icônes sur les nœuds, ainsi que les couleurs des nœuds et des liens. Vous avez la possibilité d'utiliser les icônes et couleurs prédéfinies ; vous pouvez également spécifier des icônes et couleurs personnalisées en modifiant le fichier .dgml du graphique. Consultez Application de styles personnalisés aux nœuds et aux liens.
Par exemple, vous pouvez choisir une couleur pour mettre en évidence des nœuds et des liens ayant une certaine catégorie ou propriété. Vous avez ainsi la possibilité d'identifier des zones spécifiques du graphique et de vous concentrer sur ces dernières.
Pour appliquer une icône ou couleur prédéfinie aux nœuds ayant une certaine catégorie ou propriété
Si la zone Légende n'est pas visible, ouvrez le menu contextuel du graphique. Choisissez Afficher la légende.
Dans la zone Légende, vérifiez si la propriété ou la catégorie de nœud s'affiche dans la liste.
Si la liste n'inclut pas la catégorie ou la propriété, choisissez + dans la zone Légende, Catégorie de nœud ou Propriété de nœud, ainsi que la catégorie ou la propriété.
La catégorie ou la propriété apparaît maintenant dans la zone Légende.
Notes
Pour créer une catégorie et l'assigner à un nœud, consultez Assignation de catégories aux nœuds et aux liens.Pour créer une propriété et l'assigner à un nœud, consultez Assignation de propriétés aux nœuds et aux liens.
Dans la boîte de dialogue Légende, ouvrez la liste déroulante en regard de la catégorie ou de la propriété.
Utilisez le tableau suivant pour sélectionner le style que vous voulez modifier :
Pour modifier l'élément suivant
Choose
Couleur d'arrière-plan
Arrière-plan
Couleur du contour
Trait
Couleur du texte
Foreground
Icône
Icônes
La zone Sélecteur de jeu de couleurs apparaît pour que vous puissiez sélectionner une couleur (ou une icône).
Dans la boîte de dialogue Sélecteur de jeu de couleurs, exécutez l'un des éléments suivants :
Pour appliquer l'élément suivant
Exécuter ces étapes
Jeu de couleurs (ou d'icônes)
Ouvrez la liste Sélectionner le jeu de couleurs (ou Sélectionner le jeu d'icônes). Sélectionnez un jeu de couleurs (ou d'icônes).
Pour rétablir la couleur (ou l'icône) par défaut, dans la liste déroulante Sélectionner le jeu de couleurs (ou Sélectionner le jeu d'icônes), choisissez Aucun.
Couleur (ou icône) spécifique
Ouvrez la liste de valeurs des catégories ou des propriétés. Sélectionnez une couleur (ou une icône).
Notes
Vous pouvez réorganiser, supprimer ou temporairement désactiver des styles dans la zone Légende.Consultez Modifier la zone de légende.
Pour appliquer une couleur prédéfinie aux liens correspondant à une certaine catégorie ou propriété
Si la zone Légende n'est pas visible, ouvrez le menu contextuel du graphique. Choisissez Afficher la légende.
Dans la zone Légende, vérifiez si la catégorie ou la propriété s'affiche dans la liste.
Si la liste n'inclut pas la catégorie ou la propriété, choisissez + dans la zone Légende, Catégorie de lien ou Propriété de lien, ainsi que la catégorie ou la propriété.
La catégorie ou la propriété apparaît maintenant dans la zone Légende.
Notes
Pour créer une catégorie et l'assigner à un lien, consultez Assignation de catégories aux nœuds et aux liens.Pour créer une propriété et l'assigner à un lien, consultez Assignation de propriétés aux nœuds et aux liens.
Dans la zone Légende, ouvrez la liste déroulante en regard de la catégorie ou de la propriété.
Sélectionnez Trait pour modifier la couleur de contour et de la pointe de flèche du lien.
La zone Sélecteur de jeu de couleurs apparaît pour que vous puissiez sélectionner une couleur.
Dans la zone Sélecteur de jeu de couleurs, choisissez l'un des éléments suivants :
Pour appliquer l'élément suivant
Exécuter ces étapes
Jeu de couleurs
Ouvrez la liste Sélectionner le jeu de couleurs. Sélectionnez un jeu de couleurs.
Pour rétablir la couleur par défaut, dans la liste déroulante Sélectionner le jeu de couleurs, choisissez Aucun.
Couleur spécifique
Ouvrez la liste des valeurs de type ou de propriété pour sélectionner une couleur.
Notes
Vous pouvez réorganiser, supprimer ou temporairement désactiver des styles dans la zone Légende.Consultez Modifier la zone de légende.
Application de styles personnalisés aux nœuds et aux liens
Vous pouvez appliquer des styles personnalisés aux éléments suivants :
Nœuds et liens uniques
Groupes de nœuds et de liens
Groupes de nœuds et de liens selon certaines conditions
Pour appliquer un style personnalisé à un seul nœud
Ouvrez le menu contextuel du nœud dont vous voulez personnaliser le style. Choisissez GoTo, DGML.
Visual Studio ouvre le fichier .dgml et met en surbrillance l'élément <Node/> de ce nœud.
Dans l'élément <Node/>, ajoutez l'un des attributs suivants pour personnaliser son style :
Pour modifier l'élément suivant
Ajouter l'attribut suivant
Couleur d'arrière-plan
Background="ColorNameOrHexadecimalValue"
Contour
Stroke="ColorNameOrHexadecimalValue"
Épaisseur du contour
StrokeThickness="StrokeValue"
Couleur du texte
Foreground="ColorNameOrHexadecimalValue"
Icône
Icon="IconFilePathLocation"
Taille du texte
FontSize="FontSizeValue"
Type de texte
FontFamily="FontFamilyName"
Épaisseur de police du texte
FontWeight="FontWeightValue"
Style de texte
FontStyle="FontStyleName"
Par exemple, vous pouvez spécifier Italic comme style de texte.
Texture
Style="Glass"
- ou -
Style="Plain"
Forme
Pour remplacer la forme par une icône, définissez la propriété Shape avec la valeur None et affectez la propriété Icon au chemin d'accès du fichier icône.
Shape="ShapeFilePathLocation"
Par exemple :
<Nodes> <Node Id="MyNode" Background="#FF008000" Stroke="#FF000000" Foreground="#FFFFFFFF" Icon="...\Icons\Globe.png"/> </Nodes>
Pour appliquer un style personnalisé à un seul lien
Sur le graphique, déplacez le pointeur de la souris sur le lien. Une info-bulle apparaît et identifie les nœuds source et cible du lien. (Raccourci : appuyez sur Onglet jusqu'à ce que le focus soit sur le lien.)
Ouvrez le menu contextuel du graphique. Choisissez GoTo, DGML.
Visual Studio ouvre le fichier .dgml du graphique.
Recherchez l'élément <Link/> qui contient à la fois les noms du nœud source et du nœud cible.
Dans l'élément <Link/>, ajoutez l'un des attributs suivants pour personnaliser son style :
Pour modifier l'élément suivant
Ajouter l'attribut suivant
Couleur du contour et de la pointe de flèche
Stroke="ColorNameOrHexadecimalValue"
Épaisseur du contour
StrokeThickness="StrokeValue"
Style de contour
StrokeDashArray="StrokeArrayValues"
Par exemple :
<Links> <Link Source="MyFirstNode" Target="MySecondNode" Background="Green" Stroke="#FF000000" StrokeDashArray="2,2"/> </Links>
Pour appliquer des styles personnalisés à un groupe de nœuds ou à des liens
Assignez les catégories ou les propriétés voulues aux nœuds ou aux liens.
Conseil
Si vous avez répété des styles sur de nombreux nœuds ou liens, vous pouvez envisager d'appliquer une catégorie à ces nœuds ou à ces liens, puis d'appliquer un style à cette catégorie.Pour plus d'informations, consultez Assignation de catégories aux nœuds et aux liens et Assignation de propriétés aux nœuds et aux liens.
Ouvrez le menu contextuel de la surface du graphique. Choisissez GoTo, DGML.
Visual Studio ouvre le fichier .dgml du graphique.
S'il n'existe pas d'élément <Styles></Styles>, ajoutez-en un sous l'élément <DirectedGraph></DirectedGraph>, après l'élément <Links></Links>.
Dans l'élément <Styles></Styles>, sous l'élément <Style/>, spécifiez les attributs suivants :
TargetType="Node | Link | Graph"
GroupLabel="NameInLegendBox"
ValueLabel="NameInStylePickerBox"
Pour appliquer un style personnalisé à tous les types cibles, n'utilisez pas de condition.
Pour appliquer un style conditionnel à des groupes de nœuds ou de liens
Dans l'élément <Style/>, ajoutez un élément <Condition/> contenant un attribut Expression pour spécifier une expression qui retourne une valeur booléenne.
Par exemple :
<Condition Expression="MyCategory"/>
- ou -
<Condition Expression="MyCategory > 100"/>
- ou -
<Condition Expression="HasCategory('MyCategory')"/>
Cette expression utilise la syntaxe de notation BNF (Backus-Naur) suivante :
<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> ::= single or double-quoted string literal
<Number> ::= chaîne de chiffres avec virgule décimale facultative
Vous pouvez spécifier plusieurs éléments <Condition/> , qui doivent tous avoir la valeur true pour appliquer le style.
Sur la ligne suivante, après l'élément <Condition/>, ajoutez un ou plusieurs éléments <Setter/> pour spécifier un attribut Property et un attribut Value fixe ou un attribut Expression calculé à appliquer au graphique, aux nœuds ou aux liens qui remplissent la condition.
Par exemple :
<Setter Property="BackGround" Value="Green"/>
À titre d'exemple simple et complet, la condition suivante spécifie qu'un nœud apparaît en vert ou en rouge selon que sa catégorie Passed a la valeur True ou 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>
Le tableau suivant inclut des conditions d'exemple que vous pouvez utiliser :
Modification de la zone Légende
Vous pouvez réorganiser, supprimer ou temporairement désactiver des styles dans la zone Légende :
Ouvrez le menu contextuel pour un style dans la zone Légende.
Exécutez l'une des tâches suivantes :
Pour
Choose
Déplacer le style vers le haut
Monter
Déplace l'élément vers le bas
Descendre
Supprimer l'élément
Supprimer
Désactiver l'élément
Désactiver
Réactiver l'élément
Activer
Copie des styles d'un graphique dans un autre graphique
Assurez-vous que la zone Légende apparaît sur le graphique source. Si elle n'est pas visible, ouvrez le menu contextuel d'une zone vide du graphique source. Choisissez Afficher la légende.
Ouvrez le menu contextuel de la zone Légende. Choisissez Copier la légende.
Collez la légende sur le graphique cible.
Assignation de propriétés aux nœuds et aux liens
Vous pouvez organiser des nœuds et des liens en leur assignant des propriétés. Par exemple, vous pouvez sélectionner des nœuds ayant des propriétés spécifiques afin de pouvoir les regrouper, modifier leur style ou les masquer.
Pour assigner une propriété à un nœud
Ouvrez le menu contextuel du nœud. Choisissez GoTo, DGML.
Visual Studio ouvre le fichier .dgml et met en surbrillance l'élément <Node/> de ce nœud.
Dans l'élément <Node/>, spécifiez le nom de la propriété et sa valeur. Par exemple :
<Nodes> <Node Id="MyNode" MyPropertyName="PropertyValue" /> </Nodes>
Ajoutez un élément <Property/> à la section <Properties> pour spécifier des attributs, tels que ses nom visible et type de données :
<Properties> <Property Id="MyPropertyName" Label="My Property" DataType="System.DataType"/> </Properties>
Pour assigner une propriété à un lien
Sur le graphique, déplacez le pointeur de la souris sur le lien. Une info-bulle apparaît et identifie les nœuds source et cible du lien. (Raccourci : appuyez sur Tabulation jusqu'à ce que le focus soit sur le lien.)
Ouvrez le menu contextuel du graphique. Choisissez GoTo, DGML.
Visual Studio ouvre le fichier .dgml du graphique.
Recherchez l'élément <Link/> qui contient à la fois les noms du nœud source et du nœud cible.
Dans l'élément <Node/>, spécifiez le nom de la propriété et sa valeur. Par exemple :
<Links> <Link Source="MyFirstNode" Target="MySecondNode" MyPropertyName="PropertyValue" /> </Links>
Ajoutez un élément <Property/> à la section <Properties> pour spécifier des attributs, tels que ses nom visible et type de données :
<Properties> <Property Id="MyPropertyName" Label="My Property Name" DataType="System.DataType"/> </Properties>
Assignation de catégories aux nœuds et aux liens
Vous pouvez organiser des nœuds en leur assignant des catégories. Par exemple, vous avez la possibilité de sélectionner des nœuds appartenant à certaines catégories afin de pouvoir les regrouper, modifier leur style ou les masquer. Vous pouvez mettre en évidence des liens ayant certaines catégories. Pour plus d'informations, consultez les sections suivantes :
Regrouper les nœuds
Modification du style des nœuds et des liens
Masquage ou affichage de nœuds
Pour assigner une catégorie à un nœud
- Pour assigner une catégorie prédéfinie, telle que Catégorie 1, ouvrez le menu contextuel du nœud. Choisissez Classer et une catégorie prédéfinie.
- ou -
Pour créer et assigner une catégorie personnalisée :
- Choisissez le nœud à classer. Appuyez sur F4 pour ouvrir la fenêtre Propriétés. Tapez le nom de catégorie dans la propriété Nouvelle catégorie du nœud. Appuyez sur ENTRÉE.
- ou -
Ouvrez le menu contextuel du nœud. Choisissez GoTo, DGML.
Visual Studio ouvre le fichier .dgml et met en surbrillance l'élément <Node/> de ce nœud.
Dans l'élément <Node/>, ajoutez un attribut Category pour spécifier le nom de la catégorie. Par exemple :
<Nodes> <Node Id="MyNode" Category="MyCategory" /> </Nodes>
Ajoutez un élément <Category/> à la section <Categories> afin de pouvoir utiliser l'attribut Label pour spécifier le texte affiché de la catégorie :
<Categories> <Category Id="MyCategory" Label="My Category" /> </Categories>
Pour assigner une catégorie à un lien
Sur le graphique, déplacez le pointeur de la souris sur le lien pour afficher l'info-bulle et identifier les nœuds source et cible du lien. (Raccourci : appuyez sur Tabulation jusqu'à ce que le focus soit sur le lien.)
Ouvrez le menu contextuel du graphique. Choisissez GoTo, DGML.
Visual Studio ouvre le fichier .dgml du graphique.
Recherchez l'élément <Link/> qui contient à la fois les noms du nœud source et du nœud cible.
Dans l'élément <Link/>, ajoutez un attribut Category pour spécifier le nom de la catégorie. Par exemple :
<Links> <Link Source="MyFirstNode" Target="MySecondNode" Category="MyCategory" </Links>
Ajoutez un élément <Category/> à la section <Categories> afin de pouvoir utiliser l'attribut Label pour spécifier le texte affiché de la catégorie :
<Categories> <Category Id="MyCategory" Label="My Category" /> </Categories>
Vous pouvez créer des catégories hiérarchiques pour pouvoir plus facilement organiser les nœuds et ajouter des attributs aux catégories enfants à l'aide de l'héritage.
Pour créer des catégories hiérarchiques
Ajoutez d'abord un élément <Category/> pour la catégorie parente, puis l'attribut BasedOn à l'élément <Category/> de la catégorie enfant.
Par exemple :
<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>
Dans cet exemple, l'arrière-plan de MyFirstNode est vert car son attribut Category hérite de l'attribut Background de MyParentCategory.
Lier les éléments aux nœuds ou aux liens
Vous pouvez lier des éléments, tels que des documents ou des URL, à un nœud ou à un lien en modifiant le fichier .dgml du graphique et en ajoutant un attribut Reference à l'élément <Node/>d'un nœud ou bien l'élément <Link/> d'un lien. Vous pouvez ensuite ouvrir et afficher ce contenu à partir du nœud ou du lien. L'attribut Reference spécifie le chemin d'accès de ce contenu. Il peut s'agir d'un chemin d'accès relatif par rapport à l'emplacement du fichier .dgml ou d'un chemin d'accès absolu.
Avertissement
Si vous utilisez des chemins d'accès relatifs, et si le fichier .dgml est déplacé vers un emplacement différent, ces chemins d'accès ne seront plus résolus.Lorsque vous essayez d'ouvrir et d'afficher le contenu lié, une erreur indiquant que le contenu ne peut pas être affiché se produit.
Par exemple, vous pouvez souhaiter lier les éléments suivants :
Pour décrire les modifications apportées à une classe, vous avez la possibilité de lier l'URL d'un élément de travail, d'un document ou d'un autre fichier .dgml, au nœud d'une classe.
Vous pouvez lier un diagramme de couche à un nœud de groupe qui représente une couche dans l'architecture logique du logiciel.
Pour afficher davantage d'informations sur le composant qui expose une interface, vous pouvez lier un diagramme de composant au nœud de l'interface.
Lier un nœud à un bogue ou à un élément de travail Team Foundation Server, ou à d'autres informations qui lui sont liées.
Pour lier un élément à un nœud
Sur le graphique, ouvrez le menu contextuel du nœud. Choisissez GoTo, DGML.
Visual Studio ouvre le fichier .dgml et met en surbrillance l'élément <Node/> de ce nœud.
Effectuez l'une des tâches présentées dans le tableau suivant :
Pour lier
Exécuter ces étapes
Un seul élément
Dans l'élément <Node/> ou <Link/>, ajoutez un attribut Reference pour spécifier l'emplacement de l'élément.
Notes
Il ne peut exister qu'un seul attribut Reference par élément.
Par exemple :
<Nodes> <Node Id="MyNode" Reference="MyDocument.txt" /> </Nodes> <Properties> <Property Id="Reference" Label="My Document" DataType="System.String" IsReference="True" /> </Properties>
Plusieurs éléments
Dans l'élément <Node/> ou <Link/>, ajoutez un nouvel attribut pour spécifier l'emplacement de chaque référence.
Dans la section <Properties> :
Ajoutez un élément <Property/> pour chaque nouveau type de référence.
Définissez l'attribut Id au nom du nouvel attribut de référence.
Ajoutez l'attribut IsReference et affectez-lui la valeur True pour faire apparaître la référence dans le menu contextuel GoTo de l'élément.
Utilisez l'attribut Label pour spécifier le texte affiché dans le menu contextuel GoTo du nœud.
Par exemple :
<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>
Utilisez l'attribut ReferenceTemplate pour spécifier une chaîne commune, telle qu'une URL, qui est utilisée par plusieurs références au lieu de répéter cette chaîne dans la référence.
L'attribut ReferenceTemplate spécifie un espace réservé pour la valeur de la référence. Dans l'exemple suivant, l'espace réservé {0} de l'attribut ReferenceTemplate sera remplacé par les valeurs des attributs MyFirstReference et MySecondReference de l'élément <Node/> pour produire un chemin d'accès complet :
<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>
Pour afficher les éléments référencés du graphique, ouvrez le menu contextuel du nœud ou du lien. Choisissez GoTo, puis l'élément.
Création d'alias pour les chemins d'accès fréquemment utilisés
Lorsque vous remplacez des chemins d'accès fréquemment utilisés par des alias, vous réduisez la taille du fichier .dgml, ainsi que la durée nécessaire au téléchargement et à l'enregistrement du fichier. Pour créer un alias, ajoutez une section <Paths></Paths> à la fin du fichier .dgml. Dans cette section, ajoutez un élément <Path/> pour définir un alias pour le chemin d'accès :
<Paths> <Path Id="MyPathAlias" Value="C:\...\..." /> </Paths>
Pour référencer l'alias à partir d'un élément du fichier .dgml, mettez la valeur Id de l'élément <Path/> entre parenthèses (()) et faites précéder le tout du signe dollar ($) :
<Nodes> <Node Id="MyNode" Reference="$(MyPathAlias)MyDocument.txt" /> </Nodes> <Properties> <Property Id="Reference" Label="My Document" DataType="System.String" IsReference="True" /> </Properties>
Fonctionnement du langage DGML (Directed Graph Markup Language)
Le langage DGML utilise le langage XML simple pour décrire des graphiques orientés cycliques et acycliques. Un graphique orienté est un ensemble de nœuds reliés par des liens (ou bords). Les nœuds et les liens peuvent être utilisés pour représenter des structures interconnectées, telles que les éléments d'un projet logiciel. Vous pouvez utiliser le langage DGML pour visualiser des informations, effectuer une analyse de complexité ou simplement parcourir et modifier des graphiques orientés.
Les nœuds et les liens sont désignés par « éléments de graphique » ou, plus simplement, « éléments ». Le tableau suivant décrit les genres d'éléments qui sont utilisés dans le langage DGML :
Notes
Lorsque vous modifiez un fichier .dgml, IntelliSense vous aide à identifier les attributs qui sont disponibles pour chaque élément, ainsi que leurs valeurs.Pour spécifier la couleur dans un attribut, utilisez le nom des couleurs courantes (« Bleu », par exemple) ou des valeurs hexadécimales ARVB (« #ffa0b1c3 », par exemple).Le langage DGML utilise un sous-ensemble réduit de formats de définition de couleur WPF (Windows Presentation Foundation).Pour plus d'information, consultez Couleurs, classe.
Élément
Exemple de format
<DirectedGraph></DirectedGraph>
Cet élément est l'élément racine du document de graphique orienté (.dgml). Tous les autres éléments DGML s'inscrivent dans la portée de cet élément.
La liste suivante décrit des attributs facultatifs que vous pouvez inclure :
Background - Couleur de l'arrière-plan du graphique.
BackgroundImage - Emplacement d'un fichier image à utiliser comme arrière-plan pour le graphique.
GraphDirection - Lorsque le graphique se présente sous forme d'arborescence (Sugiyama), disposez les nœuds de sorte que la plupart des liens suivent la direction spécifiée : TopToBottom, BottomToTop, LeftToRight ou RightToLeft. Consultez Parcourir et réorganiser des graphiques de dépendance.
Layout - Affectez au graphique les dispositions suivantes : None, Sugiyama (présentation sous forme d'arborescence), ForceDirected (clusters rapides) ou DependencyMatrix. Consultez Parcourir et réorganiser des graphiques de dépendance.
NeighborhoodDistance - Lorsque le graphique se présente sous forme d'arborescence ou de clusters rapides, seuls les nœuds qui possèdent un nombre spécifié de liens (de 1 à 7) éloignés des nœuds sélectionnés s'affichent. Consultez Parcourir et réorganiser des graphiques de dépendance.
<?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>
Cet élément facultatif contient une liste d'éléments <Node/> qui définissent des nœuds sur le graphique. Pour plus d'informations, consultez l'élément <Node/>.
Notes
Lorsque vous faites référence à un nœud non défini dans un élément <Link/>, le graphique crée automatiquement un élément <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/>
Cet élément définit un nœud unique. Il figure dans la liste des éléments <Nodes><Nodes/>.
Cet élément doit inclure les attributs suivants :
Id - Nom unique du nœud et valeur par défaut de l'attribut Label, lorsqu'aucun attribut Label séparé n'est spécifié. Ce nom doit correspondre à l'attribut Source ou Target du lien qui y fait référence.
La liste suivante décrit certains des attributs facultatifs que vous pouvez inclure :
Label - Nom complet du nœud.
Attributs Style. Consultez Application de styles personnalisés aux nœuds et aux liens.
Category - Nom d'une catégorie qui identifie les éléments qui partagent cet attribut. Pour plus d'informations, consultez l'élément <Category/>.
Property - Nom d'une propriété qui identifie des éléments qui ont la même valeur de propriété. Pour plus d'informations, consultez l'élément <Property/>.
Group - Si le nœud contient d'autres nœuds, affectez à cet attribut la valeur Expanded ou Collapsed pour respectivement en afficher ou en masquer le contenu. Un élément <Link/> doit inclure l'attribut Category="Contains" et spécifier le nœud parent en tant que nœud source et le nœud enfant en tant que nœud cible. Consultez Organisation des nœuds en groupes.
Visibility - Affectez à cet attribut la valeur Visible, Hidden ou Collapsed. Utilise System.Windows.Visibility. Consultez Masquage ou affichage de nœuds.
Reference - Définissez cet attribut pour le lier à un document ou une URL. Consultez Lier des éléments à des nœuds.
<?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>
Cet élément contient la liste des éléments <Link> qui définissent des liens entre des nœuds. Pour plus d'informations, consultez l'élément <Link/>.
<?xml version="1.0" encoding="utf-8"?> <DirectedGraph Title="DrivingTest" xmlns="https://schemas.microsoft.com/vs/2009/dgml"> <Links> <Link ... /> </Links> </DirectedGraph>
<Link/>
Cet élément définit un lien unique qui relie un nœud source à un nœud cible. Il figure dans la liste des éléments <Links></Links>.
Notes
Si cet élément fait référence à un nœud non défini, le document de graphique crée automatiquement un nœud qui possède les attributs spécifiés, le cas échéant.
Cet élément doit inclure les attributs suivants :
Source - Nœud source du lien.
Target - Nœud cible du lien.
La liste suivante décrit certains des attributs facultatifs que vous pouvez inclure :
Label - Nom complet du lien.
Attributs Style. Consultez Application de styles personnalisés aux nœuds et aux liens.
Category - Nom d'une catégorie qui identifie les éléments qui partagent cet attribut. Pour plus d'informations, consultez l'élément <Category/>.
Property - Nom d'une propriété qui identifie des éléments qui ont la même valeur de propriété. Pour plus d'informations, consultez l'élément <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>
Cet élément contient la liste des éléments <Category/>. Pour plus d'informations, consultez l'élément <Category/>.
<?xml version="1.0" encoding="utf-8"?> <DirectedGraph Title="DrivingTest" xmlns="https://schemas.microsoft.com/vs/2009/dgml"> <Categories> <Category ... /> </Categories> </DirectedGraph>
<Category/>
Cet élément définit un attribut Category qui permet d'identifier les éléments qui partagent cet attribut. Un attribut Category peut être utilisé pour organiser des éléments de graphique, proposer des attributs partagés par héritage ou définir d'autres métadonnées.
Cet élément doit inclure les attributs suivants :
Id - Nom unique de la catégorie et valeur par défaut de l'attribut Label, lorsqu'aucun attribut Label séparé n'est spécifié.
La liste suivante décrit certains des attributs facultatifs que vous pouvez inclure :
Label - Nom convivial de la catégorie.
BasedOn - Catégorie parente dont le <Category/> de l'élément actuel hérite.
Dans l'exemple donné pour cet élément, la catégorie FailedTest hérite de son attribut Stroke à partir de la catégorie PassedTest. Consultez « Pour créer des catégories hiérarchiques » dans Assignation de catégories aux nœuds et aux liens.
Les catégories proposent également un comportement de modèle de base qui contrôle l'apparence des nœuds et des liens lorsqu'ils s'affichent sur un graphique. Consultez Application de styles personnalisés aux nœuds et aux liens.
<?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>
Cet élément contient la liste des éléments <Property/>. Pour plus d'informations, consultez l'élément <Property/>.
<?xml version="1.0" encoding="utf-8"?> <DirectedGraph Title="DrivingTest" xmlns="https://schemas.microsoft.com/vs/2009/dgml"> <Properties> <Property ... /> </Properties> </DirectedGraph>
<Property/>
Cet élément définit un attribut Property que vous pouvez utiliser pour assigner une valeur à tout attribut ou élément DGML, y compris des catégories et autres propriétés.
Cet élément doit inclure les attributs suivants :
Id - Nom unique de la propriété et valeur par défaut de l'attribut Label, lorsqu'aucun attribut Label séparé n'est spécifié.
DataType - Type de données stockées par la propriété.
Si vous souhaitez que la propriété s'affiche dans la fenêtre Propriétés, utilisez la propriété Label pour spécifier le nom complet de la propriété.
Consultez Assignation de propriétés aux nœuds et aux liens.
<?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>
Voir aussi
Concepts
Mapper les dépendances dans votre code dans des graphiques de dépendance