Personnaliser des cartes de code en modifiant les fichiers DGMLCustomize code maps by editing the DGML files

Pour personnaliser une carte de code, vous pouvez modifier le fichier DGML (Directed Graph Markup Language) (.dgml) d'une carte.To customize a code map, you can edit a map's Directed Graph Markup Language (.dgml) file. Par exemple, vous pouvez modifier des éléments pour spécifier des styles personnalisés, affecter des propriétés et des catégories à des éléments de code et des liens, ou lier des documents ou des URL à des éléments de code ou des liens.For example, you can edit elements to specify custom styles, assign properties and categories to code elements and links, or link documents or URLs to code elements or to links. Pour plus d’informations sur les éléments DGML, consultez référence de balisage langage DGML (Directed Graph).For more information about DGML elements, see Directed Graph Markup Language (DGML) reference.

Modifiez le fichier .dgml de la carte de code dans un éditeur de texte ou un éditeur XML.Edit the code map's .dgml file in a text or XML editor. Si la carte fait partie de votre solution Visual Studio, sélectionnez-le dans l’Explorateur de solutions, ouvrez le menu contextuel et choisissez ouvrir avec, éditeur XML (texte).If the map is part of your Visual Studio solution, select it in Solution Explorer, open the shortcut menu, and choose Open With, XML (Text) Editor.

Note

Pour créer des cartes de code, vous devez avoir Visual Studio Enterprise.To create code maps, you must have Visual Studio Enterprise. Quand vous modifiez une carte de code dans Visual Studio, il nettoie tous les attributs et éléments DGML inutilisés en les supprimant lorsque vous enregistrez le fichier .dgml.When you edit a code map in Visual Studio, it cleans up any unused DGML elements and attributes by deleting them when you save the .dgml file. Il crée aussi des éléments de code automatiquement quand vous ajoutez manuellement de nouveaux liens.It also creates code elements automatically when you manually add new links. 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.When you save the .dgml file, any attributes that you added to an element might rearrange themselves in alphabetical order.

Groupe des éléments de codeGroup code elements

Vous pouvez ajouter de nouveaux groupes ou convertir des nœuds existants dans un groupe.You can add new groups or convert existing nodes into a group.

  1. Dans un éditeur XML ou un éditeur de texte, ouvrez le fichier .dgml.Open the .dgml file in a text or XML editor.

  2. Pour convertir un élément de code en groupe, recherchez l'élément <Node/> correspondant à cet élément de code.To convert a code element to a group, find the <Node/> element for that code element.

    - ou -- or -

    Pour ajouter un nouveau groupe, recherchez la section <Nodes>.To add a new group, find the <Nodes> section. Ajoutez un nouvel élément <Node/>.Add a new <Node/> element.

  3. Dans l'élément <Node/>, ajoutez un attribut Group pour spécifier si le groupe apparaît développé ou réduit.In the <Node/> element, add a Group attribute to specify whether the group appears expanded or collapsed. Exemple :For example:

    <Nodes>
       <Node Id="MyFirstGroup" Group="Expanded" />
       <Node Id="MySecondGroup" Group="Collapsed" />
    </Nodes>
    
  4. Dans la section <Links>, vérifiez qu'un élément <Link/> ayant les attributs suivants existe pour chaque relation entre un élément de code de groupe et ses éléments de code enfants :In the <Links> section, make sure that a <Link/> element that has the following attributes exist for each relationship between a group code element and its child code elements:

    • un attribut Source qui spécifie l'élément de code de groupe ;A Source attribute that specifies the group code element

    • un attribut Target qui spécifie l'élément de code enfant ;A Target attribute that specifies the child code element

    • un attribut Category qui spécifie une relation Contains entre l'élément de code de groupe et son élément de code enfant.A Category attribute that specifies a Contains relationship between the group code element and its child code element

      Par exemple :For example:

    <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 la Category d’attribut, consultez attribuer des catégories à des éléments de code et des liens.For more information about the Category attribute, see Assign categories to code elements and links.

Modifier le style de la carteChange the style of the map

Vous pouvez changer la couleur de l'arrière-plan et de la bordure de la carte en modifiant son fichier .dgml.You can change the background color and border color of the map by editing the map's .dgml file. Pour modifier le style des éléments de code et des liens, consultez modifier le style des éléments de code et des liens.To change the style of code elements and links, see Change the style of code elements and links.

  1. Dans un éditeur XML ou un éditeur de texte, ouvrez le fichier .dgml.Open the .dgml file in a text or XML editor.

  2. Dans l'élément <DirectedGraph>, ajoutez l'un des attributs suivants pour modifier son style :In the <DirectedGraph> element, add any of the following attributes to change its style:

    Couleur d'arrière-planBackground color

    Background="ColorNameOrHexadecimalValue"
    

    Couleur de la bordureBorder color

    Stroke="StrokeValue"
    

    Par exemple :For example:

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

Modifier le style des éléments de code et des liensChange the style of code elements and links

Vous pouvez appliquer des styles personnalisés aux éléments de code suivants :You can apply custom styles to the following code elements:

  • liens et éléments de code uniques ;Single code elements and links

  • groupes d'éléments de code et liens ;Groups of code elements and links

  • groupes d'éléments de code et liens selon certaines conditions.Groups of code elements and links based on certain conditions

Conseil

Si vous avez répété des styles sur de nombreux éléments de code ou liens, vous pouvez appliquer une catégorie à ces éléments de code ou à ces liens, puis appliquer un style à cette catégorie.If you have repeating styles across many code elements or links, you might consider applying a category to those code elements or links, and then applying a style to that category. Pour plus d’informations, consultez affecter des catégories à des éléments de Code et les liens et assignation de propriétés aux éléments de Code et des liens.For more information, see Assign Categories to Code elements and Links and Assign Properties to Code elements and Links.

Pour appliquer un style personnalisé à un seul élément de codeTo apply a custom style to a single code element
  1. Dans un éditeur XML ou un éditeur de texte, ouvrez le fichier .dgml.Open the .dgml file in a text or XML editor.

  2. Recherchez l'élément <Node/> de l'élément de code.Find the code element's <Node/> element. Ajoutez l'un de ces attributs pour personnaliser son style :Add any of these attributes to customize its style:

    Couleur d'arrière-planBackground color

    Background="ColorNameOrHexadecimalValue"
    

    PlanOutline

    Stroke="ColorNameOrHexadecimalValue"
    

    Épaisseur du contourOutline thickness

    StrokeThickness="StrokeValue"
    

    Couleur du texteText color

    Foreground="ColorNameOrHexadecimalValue"
    

    IcôneIcon

    Icon="IconFilePathLocation"
    

    Taille du texteText size

    FontSize="FontSizeValue"
    

    Type de texteText type

    FontFamily="FontFamilyName"
    

    Épaisseur de police du texteText weight

    FontWeight="FontWeightValue"
    

    Style de texteText style

    FontStyle="FontStyleName"
    

    Par exemple, vous pouvez spécifier Italic comme style de texte.For example, you can specify Italic as the text style.

    TextureTexture

    Style="Glass"
    
    • ouor -
    Style="Plain"
    

    FormeShape

    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.To replace the shape with an icon, set the Shape property to None and set the Icon property to the path with the icon file.

    Shape="ShapeFilePathLocation"
    

    Exemple :For example:

    <Nodes>
       <Node Id="MyNode" Background="#FF008000" Stroke="#FF000000"
       Foreground="#FFFFFFFF" Icon="...\Icons\Globe.png"/>
    </Nodes>
    
  1. Dans un éditeur XML ou un éditeur de texte, ouvrez le fichier .dgml.Open the .dgml file in a text or XML editor.

  2. Recherchez l'élément <Link/> qui contient à la fois les noms de l'élément de code source et de l'élément de code cible.Find the <Link/> element that contains both the names of the source code element and target code element.

  3. Dans l'élément <Link/>, ajoutez l'un des attributs suivants pour personnaliser son style :In the <Link/> element, add any of the following attributes to customize its style:

    Couleur du contour et de la pointe de flècheOutline and arrowhead color

    Stroke="ColorNameOrHexadecimalValue"
    

    Épaisseur du contourOutline thickness

    StrokeThickness="StrokeValue"
    

    Style de contourOutline style

    StrokeDashArray="StrokeArrayValues"
    

    Exemple :For example:

    <Links>
       <Link Source="MyFirstNode" Target="MySecondNode" Background="Green" Stroke="#FF000000" StrokeDashArray="2,2"/>
    </Links>
    
  1. Dans un éditeur XML ou un éditeur de texte, ouvrez le fichier .dgml.Open the .dgml file in a text or XML editor.

  2. 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>.If a <Styles></Styles> element does not exist, add one under the <DirectedGraph></DirectedGraph> element after the <Links></Links> element.

  3. Dans l'élément <Styles></Styles>, sous l'élément <Style/>, spécifiez les attributs suivants :In the <Styles></Styles> element, under the <Style/> element and specify the following attributes:

    • TargetType="Node | Link | Graph"TargetType="Node | Link | Graph"

    • GroupLabel=" NameInLegendBox "GroupLabel=" NameInLegendBox "

    • ValueLabel=" NameInStylePickerBox "ValueLabel=" NameInStylePickerBox "

      Pour appliquer un style personnalisé à tous les types cibles, n'utilisez pas de condition.To apply a custom style to all target types, do not use a condition.

  1. Dans un éditeur XML ou un éditeur de texte, ouvrez le fichier .dgml.Open the .dgml file in a text or XML editor.

  2. 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.In the <Style/> element, add a <Condition/> element that contains an Expression attribute to specify an expression that returns a Boolean value.

    Par exemple :For example:

    <Condition Expression="MyCategory"/>
    
    • ouor -
    <Condition Expression="MyCategory > 100"/>
    
    • ouor -
    <Condition Expression="HasCategory('MyCategory')"/>
    

    Cette expression utilise la syntaxe de notation BNF (Backus-Naur) suivante :This expression uses the following Backus-Naur Form (BNF) syntax:

    ::= | | "("")" | | | ::= | | "("")" | | |

    ::= ::=

    ::= "!" | "+" | "-" ::= "!" | "+" | "-"

    :: = « < » | »<= » | « = » | » > = « | » > « | » ! = » | « ou » | « et » | « + » | » * » | « / » | »- » ::= "<" | "<=" | "=" | ">=" | ">" | "!=" | "or" | "and" | "+" | "*" | "/" | "-"

    ::= | "." ::= | "."

    ::= | ::= |

    ::= "(" ")" ::= "(" ")"

    :: = Identificateur ::= Identifier

    ::= | "," | ::= | "," |

    ::= [^. ::= [^. ]*]*

    :: = littéral de chaîne simple ou entre guillemets doubles ::= single or double-quoted string literal

    :: = chaîne de chiffres avec virgule décimale facultative ::= string of digits with optional decimal point

    Vous pouvez spécifier plusieurs <Condition/> éléments, qui doivent tous avoir la valeur trues pour appliquer le style.You can specify multiple <Condition/> elements, which must all be true to apply the style.

  3. 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 à la carte, aux éléments de code ou aux liens qui remplissent la condition.On the next line after the <Condition/> element, add one or multiple <Setter/> elements to specify a Property attribute and a fixed Value attribute or a computed Expression attribute to apply to the map, code elements, or links that meet the condition.

    Exemple :For example:

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

    À titre d'exemple simple et complet, la condition suivante spécifie qu'un élément de code apparaît en vert ou en rouge selon que sa catégorie Passed a la valeur True ou False :As a simple complete example, the following condition specifies that a code element appears green or red based on whether its Passed category is set to True or False:

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph xmlns="http://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 :The following table includes some example conditions that you can use:

Définir la taille de police en fonction du nombre de lignes de code, qui modifie également la taille de l'élément de code.Set the font size as a function of the number of lines of code, which also changes the size of the code element. Cet exemple utilise une expression conditionnelle unique pour définir plusieurs propriétés : FontSize et FontFamily.This example uses a single conditional expression to set multiple properties, FontSize and FontFamily.

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph xmlns="http://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 > 0" />
      <Setter Property="FontSize" Expression="Math.Max(9,Math.Sqrt(LinesOfCode))" />
      <Setter Property="FontFamily" Value="Papyrus" />
   </Style>
</Styles>
</DirectedGraph>

Définir la couleur d'arrière-plan d'un élément de code en fonction de la propriété Coverage.Set the background color of a code element based on the Coverage property. Les styles sont évalués dans leur ordre d'apparition, comme les instructions if-else.The styles are evaluated in the order that they appear, similar to if-else statements.

Dans cet exemple :In this example:

  1. Si la valeur de Coverage est > à 80, affectez la couleur verte à la propriété Background.If Coverage is > 80, then set the Background property to green.

  2. Si la valeur de Coverage est > à 50, affectez une nuance orange à la propriété Background en fonction de la valeur de la propriété Coverage.Else if Coverage is > 50, then set the Background property to a shade of orange based on the value of the Coverage property.

  3. Sinon, affectez une nuance rouge à la propriété Background en fonction de la valeur de la propriété Coverage.Else set the Background property to a shade of red based on the value of the Coverage property.

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph xmlns="http://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 > 80" />
      <Setter Property="Background" Value="Green" />
   </Style>
   <Style TargetType="Node" GroupLabel="Coverage" ValueLabel="OK">
      <Condition Expression="Coverage > 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>

Affecter à la propriété Shape la valeur None afin que l'icône remplace la forme.Set the Shape property to None so that the icon replaces the shape. Utilisez la propriété Icon pour spécifier l'emplacement de l'icône.Use the Icon property to specify the location of the icon.

<DirectedGraph xmlns="http://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>

Affecter des propriétés à des liens et des éléments de codeAssign properties to code elements and links

Vous pouvez organiser des éléments de code et des liens en leur assignant des propriétés.You can organize code elements and links by assigning properties to them. Par exemple, vous pouvez sélectionner des éléments de code ayant des propriétés spécifiques pour pouvoir les regrouper, modifier leur style ou les masquer.For example, you can select code elements that have specific properties so that you can group them, change their style, or hide them.

Pour assigner une propriété à un élément de codeTo assign a property to a code element

  1. Dans un éditeur XML ou un éditeur de texte, ouvrez le fichier .dgml.Open the .dgml file in a text or XML editor.

  2. Recherchez l'élément <Node/> pour cet élément de code.Find the <Node/> element for that code element. Spécifiez le nom de la propriété et sa valeur.Specify the name of the property and its value. Exemple :For example:

    <Nodes>
       <Node Id="MyNode" MyPropertyName="PropertyValue" />
    </Nodes>
    
  3. Ajoutez un élément <Property/> à la section <Properties> pour spécifier des attributs, tels que ses nom visible et type de données :Add a <Property/> element to the <Properties> section to specify attributes such as its visible name and data type:

    <Properties>
       <Property Id="MyPropertyName" Label="My Property" DataType="System.DataType"/>
    </Properties>
    
  1. Dans un éditeur XML ou un éditeur de texte, ouvrez le fichier .dgml.Open the .dgml file in a text or XML editor.

  2. Recherchez l'élément <Link/> qui contient à la fois les noms de l'élément de code source et de l'élément de code cible.Find the <Link/> element that contains both the names of the source code element and target code element.

  3. Dans l'élément <Node/>, spécifiez le nom de la propriété et sa valeur.In the <Node/> element, specify the name of the property and its value. Exemple :For example:

    <Links>
       <Link Source="MyFirstNode" Target="MySecondNode" MyPropertyName="PropertyValue" />
    </Links>
    
  4. Ajoutez un élément <Property/> à la section <Properties> pour spécifier des attributs, tels que ses nom visible et type de données :Add a <Property/> element to the <Properties> section to specify attributes such as its visible name and data type:

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

Attribuer des catégories à des éléments de code et des liensAssign categories to code elements and links

Les sections suivantes expliquent comment organiser des éléments de code en leur assignant des catégories et comment créer des catégories hiérarchiques qui vous aident à organiser les éléments de code et ajouter des attributs aux catégories enfants à l'aide de l'héritage.The following sections demonstrate how you can organize code elements by assigning categories to them, and how you can create hierarchical categories that help you organize code elements and add attributes to child categories by using inheritance.

Pour assigner une catégorie à un élément de codeTo assign a category to a code element

  • Dans un éditeur XML ou un éditeur de texte, ouvrez le fichier .dgml.Open the .dgml file in a text or XML editor.

  • Recherchez l'élément <Node/> pour l'élément de code souhaité.Find the <Node/> element for the code element that you want.

  • Dans l'élément <Node/>, ajoutez un attribut Category pour spécifier le nom de la catégorie.In the <Node/> element, add a Category attribute to specify the name of the category. Exemple :For example:

    <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 :Add a <Category/> element to the <Categories> section so that you can use the Label attribute to specify the display text for that category:

    <Categories>
       <Category Id="MyCategory" Label="My Category" />
    </Categories>
    
  1. Dans un éditeur XML ou un éditeur de texte, ouvrez le fichier .dgml.Open the .dgml file in a text or XML editor.

  2. Recherchez l'élément <Link/> qui contient à la fois les noms de l'élément de code source et de l'élément de code cible.Find the <Link/> element that contains both the names of the source code element and target code element.

  3. Dans l'élément <Link/>, ajoutez un attribut Category pour spécifier le nom de la catégorie.In the <Link/> element, add a Category attribute to specify the name of the category. Exemple :For example:

    <Links>
       <Link Source="MyFirstNode" Target="MySecondNode" Category="MyCategory"
    </Links>
    
  4. 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 :Add a <Category/> element to the <Categories> section so that you can use the Label attribute to specify the display text for that category:

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

Pour créer des catégories hiérarchiquesTo create hierarchical categories

  1. Dans un éditeur XML ou un éditeur de texte, ouvrez le fichier .dgml.Open the .dgml file in a text or XML editor.

  2. 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.Add a <Category/> element for the parent category, and then add the BasedOn attribute to the child category's <Category/> element.

    Exemple :For example:

    <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.In this example, the background of MyFirstNode is green because its Category attribute inherits the Background attribute of MyParentCategory.

Lier des documents ou des URL à des éléments de code et des liensLink documents or URLs to code elements and links

Vous pouvez lier des éléments ou des URL à des éléments de code ou à des liens en modifiant le fichier .dgml de la carte et en ajoutant un attribut Reference à l'élément <Node/> d'un élément de code ou bien l'élément <Link/> pour un lien.You can link documents or URLs to code elements or to links by editing the map's .dgml file and adding a Reference attribute to the <Node/> element for a code element or the <Link/> element for a link. Vous pouvez ensuite ouvrir et afficher ce contenu à partir de l'élément de code ou du lien.You can then open and view that content from the code element or link. L'attribut Reference spécifie le chemin d'accès de ce contenu.The Reference attribute specifies the path of that content. 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.This can be a path relative to the location of the .dgml file or an absolute path.

Attention

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.If you use relative paths, and the .dgml file is moved to a different location, then those paths will no longer resolve. Lorsque vous essayez d'ouvrir et d'afficher le contenu lié, une erreur indiquant que le contenu ne peut pas être affiché se produit.When you try to open and view the linked content, an error stating that the content cannot be viewed will occur.

Par exemple, vous souhaiterez peut-être lier les éléments de code suivants :For example, you might want to link the following code elements:

  • Pour décrire les modifications apportées à une classe, vous pouvez lier l'URL d'un élément de code de travail, d'un document ou d'un autre fichier .dgml à l'élément de code d'une classe.To describe the changes to a class, you might link the URL of a work code element, document, or another .dgml file to the code element for a class.

  • Vous pouvez lier un diagramme de dépendances pour un élément de code de groupe qui représente une couche dans l’architecture du logiciel logique.You might link a dependency diagram to a group code element that represents a layer in the software's logical architecture.

  • Pour afficher davantage d'informations sur le composant qui expose une interface, vous pouvez lier un diagramme de composant à l'élément de code de cette interface.To show more information about a component that exposes an interface, you might link a component diagram to the code element for that interface.

  • Lier un élément de code à un élément de travail Team Foundation Server ou du bogue ou d’autres informations relatives à l’élément de code.Link a code element to a Team Foundation Server work item or bug, or some other information that is related to the code element.

  1. Dans un éditeur XML ou un éditeur de texte, ouvrez le fichier .dgml.Open the .dgml file in a text or XML editor.

  2. Recherchez l'élément <Node/> pour l'élément de code souhaité.Find the <Node/> element for the code element that you want.

  3. Effectuez l’une des tâches présentées dans le tableau suivant :Perform one of the tasks in the following table:

    Un élément de code uniqueA single code element

    • Dans l'élément <Node/> ou <Link/>, ajoutez un attribut Reference pour spécifier l'emplacement de l'élément de code.In the <Node/> or <Link/> element, add a Reference attribute to specify the location of the code element.

      Note

      Il ne peut exister qu'un seul attribut Reference par élément.You can have only one Reference attribute per element.

      Exemple :For example:

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

    Plusieurs éléments de codeMultiple code elements

    1. Dans l'élément <Node/> ou <Link/>, ajoutez un nouvel attribut pour spécifier l'emplacement de chaque référence.In the <Node/> or <Link/> element, add a new attribute to specify the location of each reference.

    2. Dans la section <Properties> :In the <Properties> section:

      1. Ajoutez un élément <Property/> pour chaque nouveau type de référence.Add a <Property/> element for each new type of reference.

      2. Définissez l'attribut Id au nom du nouvel attribut de référence.Set the Id attribute to the name of the new reference attribute.

      3. Ajouter le IsReference d’attribut et affectez-lui la valeur True pour faire apparaître la référence dans l’élément de code atteindre la référence menu contextuel.Add the IsReference attribute and set it to True to make the reference appear on the code element's Go To Reference shortcut menu.

      4. Utilisez le Label attribut pour spécifier le texte à afficher sur l’élément de code atteindre la référence menu contextuel.Use the Label attribute to specify the display text on the code element's Go To Reference shortcut menu.

      Par exemple :For example:

    <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>
    

    Sur la carte, le nom de l'élément de code apparaît souligné.On the map, the name of the code element appears underlined. Lorsque vous ouvrez le menu contextuel de l’élément de code ou le lien, vous verrez un atteindre la référence menu contextuel qui contienne les éléments de code liées pour vous permettre de choisir.When you open the shortcut menu for the code element or the link, you will see a Go To Reference shortcut menu that contains the linked code elements for you to choose.

  4. 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.Use the ReferenceTemplate attribute to specify a common string, such as a URL, that is used by multiple references instead of repeating that string in the reference.

    L'attribut ReferenceTemplate spécifie un espace réservé pour la valeur de la référence.The ReferenceTemplate attribute specifies a placeholder for the value of the reference. 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 :In the following example, the {0} placeholder in the ReferenceTemplate attribute will be replaced by the values of the MyFirstReference and MySecondReference attributes in the <Node/> element to produce a full path:

    <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>
    
  5. Pour afficher le ou les éléments de code référencés à partir de la carte, ouvrez le menu contextuel de l'élément de code ou du lien.To view the referenced code element or code elements from the map, open the shortcut menu for the code element or the link. Choisissez atteindre la référence et ensuite l’élément de code.Choose Go To Reference and then the code element.

Voir aussiSee Also