Procedura: modificare e personalizzare documenti grafico

In Visual Studio Ultimate è possibile concentrarsi sulle aree e sulle relazioni principali di una modifica di un grafico diretto modificando i nodi e i collegamenti. Questa operazione è particolarmente utile quando nel grafico sono presenti elevate quantità di informazioni. Ad esempio, è possibile identificare i componenti principali in un sistema software esistente e le relazioni tra di essi. Tali aree possono quindi essere condivise e discusse con i membri del team. Per informazioni sulla generazione di grafici da codice, vedere Procedura: generare grafici di dipendenze per il codice .NET.

Per evidenziare aree di interesse, è possibile selezionare e filtrare nodi, applicare stili predefiniti a nodi e collegamenti e organizzare nodi in gruppi. È inoltre possibile personalizzare ulteriormente il grafico modificando il file DMGL (Directed Graph Markup Language) del grafico. È ad esempio possibile modificare gli elementi DGML nel file per specificare stili personalizzati, assegnare proprietà e categorie a nodi e collegamenti o collegare nodi a elementi quali documenti, URL e altri file con estensione dgml. Per ulteriori informazioni sugli elementi DGML, vedere Informazioni su DGML (Directed Graph Markup Language).

Nota

In Visual Studio viene eseguita la pulizia di tutti gli attributi e gli elementi DGML inutilizzati, che vengono eliminati quando si salva il file con estensione dgml. Vengono inoltre creati automaticamente elementi nodo quando si aggiungono manualmente nuovi collegamenti. Quando si salva il file con estensione dgml, è possibile che gli attributi aggiunti a un elemento si ridispongano in ordine alfabetico.

È possibile modificare un grafico nei seguenti modi:

  • Selezionare nodi

  • Nascondere o mostrare nodi

  • Mostrare o nascondere collegamenti

  • Modificare lo stile del grafico

  • Modificare lo stile di nodi e collegamenti

  • Copiare stili da un grafico a un altro

  • Organizzare nodi in gruppi

  • Assegnare proprietà a nodi e collegamenti

  • Assegnare categorie a nodi e collegamenti

  • Collegare elementi ai nodi

  • Creare alias per percorsi di utilizzo comune

Selezionare nodi

Per

Eseguire questi passaggi

Selezionare nodi da categorie specifiche

  1. Fare clic con il pulsante destro del mouse sul grafico, quindi scegliere Mostra selezione avanzata.

  2. Nella casella Selezione fare clic sulle categorie desiderate in Categorie.

Per creare e assegnare una categoria personalizzata, vedere Assegnare categorie a nodi e collegamenti.

Selezionare nodi con proprietà o valori di proprietà specifici

  1. Fare clic con il pulsante destro del mouse sul grafico, quindi scegliere Mostra selezione avanzata.

  2. Nella casella Selezione fare clic sulle proprietà desiderate in Proprietà. Per selezionare valori di proprietà specifici, espandere la proprietà.

Aggiungere nodi correlati a quelli selezionati

Fare clic con il pulsante destro del mouse sui nodi selezionati, scegliere Selezione e quindi scegliere una delle opzioni seguenti:

  • Per aggiungere nodi collegati direttamente al nodo selezionato, fare clic su Seleziona in ingresso.

  • Per aggiungere nodi collegati direttamente dal nodo selezionato, fare clic su Seleziona in uscita.

  • Per aggiungere nodi collegati direttamente al e dal nodo selezionato, fare clic su Seleziona entrambi.

  • Per aggiungere tutti i nodi collegati immediatamente al e dal nodo selezionato, fare clic su Seleziona tutti i nodi connessi.

  • Per aggiungere tutti gli elementi figlio del nodo selezionato, fare clic su Seleziona rami figlio.

Selezionare tutti i nodi non selezionati

Fare clic con il pulsante destro del mouse sui nodi selezionati, scegliere Selezione, quindi fare clic su Inverti.

Nascondere o mostrare nodi

Nascondendo i nodi nel grafico, questi vengono rimossi dalla visualizzazione nel grafico e dalla partecipazione a qualsiasi algoritmo di layout.

Per

Eseguire questi passaggi

Nascondere nodi selezionati

  1. Selezionare i nodi che si desidera nascondere.

  2. Fare clic con il pulsante destro del mouse sui nodi selezionati, scegliere Selezione, quindi fare clic su Nascondi.

Nascondere nodi con determinate categorie o proprietà

  1. Per visualizzare la casella Selezione, fare clic con il pulsante destro del mouse sulla superficie del grafico, quindi scegliere Mostra selezione avanzata.

  2. Nella casella Selezione fare clic sulle categorie o sulle proprietà desiderate.

  3. Fare clic con il pulsante destro del mouse sulla superficie del grafico, scegliere Selezione, quindi fare clic su Nascondi.

Nascondere nodi non selezionati

  1. Selezionare i nodi che non si desidera nascondere.

  2. Fare clic con il pulsante destro del mouse sui nodi selezionati o sul grafico, scegliere Selezione, quindi fare clic su Nascondi non selezionati.

Mostrare tutti i nodi nascosti

Fare clic con il pulsante destro del mouse sul grafico, scegliere Selezione, quindi fare clic su Mostra tutto.

Per nascondere i nodi modificando il file con estensione dgml

  1. Fare clic con il pulsante destro del mouse sulla superficie del grafico, quindi scegliere Visualizza DGML.

    In Visual Studio viene aperto il file con estensione dgml del grafico.

  2. Nell'elemento <Node/> aggiungere l'attributo seguente per nascondere il nodo:

    Visibility="Hidden"
    

    Ad esempio:

    <Nodes>
       <Node Id="MyNode" Visibility="Hidden"/>
    </Nodes>
    

Mostrare o nascondere collegamenti

È possibile controllare la quantità di dettaglio presente in un grafico specificando i tipi di collegamenti che si desidera visualizzare. Nel grafico vengono visualizzati due tipi di collegamenti: collegamenti diretti tra nodi e collegamenti tra gruppi, nascosti per impostazione predefinita. I collegamenti tra gruppi sono tutti i collegamenti singoli che connettono nodi tra gruppi diversi.

Quando i gruppi vengono compressi, tutti i collegamenti tra gruppi presenti nel grafico vengono aggregati in singoli collegamenti tra gruppi. Quando i gruppi vengono espansi, è possibile selezionare nodi all'interno del gruppo, mentre i nuovi collegamenti tra gruppi vengono visualizzati mostrando le dipendenze effettive all'interno di tale gruppo.

Per mostrare o nascondere collegamenti

  1. Se la barra degli strumenti del grafico non è visibile, scegliere Barre degli strumenti dal menu Visualizza, quindi fare clic su Grafico diretto.

  2. Selezionare un'attività dalla seguente tabella:

    Per

    Fare clic su

    Mostrare sempre tutti i collegamenti tra gruppi

    Mostra tutti i collegamenti tra gruppi

    Mostrare solo i collegamenti tra gruppi connessi ai nodi selezionati

    Mostra collegamenti tra gruppi nei nodi selezionati

    Nascondere sempre tutti i collegamenti tra gruppi

    Nascondi tutti i collegamenti tra gruppi

    Nascondere tutti i collegamenti (o mostrare tutti i collegamenti)

    Nascondi tutti i collegamenti

    Per mostrare tutti i collegamenti, fare nuovamente clic su Nascondi tutti i collegamenti tra gruppi per disattivare questa modalità.

Modificare lo stile del grafico

È possibile modificare il colore di sfondo e del bordo del grafico modificando il file con estensione dgml del grafico. Per modificare lo stile di nodi e collegamenti, vedere Modificare lo stile di nodi e collegamenti.

Per modificare lo stile del grafico

  1. Fare clic con il pulsante destro del mouse sulla superficie del grafico, quindi scegliere Visualizza DGML.

    In Visual Studio viene aperto il file con estensione dgml del grafico.

  2. Nell'elemento <DirectedGraph> aggiungere uno qualsiasi dei seguenti attributi per modificarne lo stile:

    Per modificare

    Aggiungere il seguente attributo

    Colore sfondo

    Background="ColorNameOrHexadecimalValue"

    Colore bordo

    Stroke="StrokeValue"

    Ad esempio:

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

Modificare lo stile di nodi e collegamenti

È possibile modificare le icone e i colori di nodi e collegamenti. È possibile utilizzare colori e icone predefiniti o specificarne di personalizzati modificando il file con estensione dgml del grafico. Per ulteriori informazioni, vedere Applicare stili personalizzati a nodi e collegamenti.

Ad esempio, è possibile scegliere un colore per evidenziare nodi e collegamenti con una determinata categoria o proprietà. In questo modo è possibile identificare aree specifiche del grafico e concentrarsi su di esse.

Per applicare un colore o un'icona predefinita ai nodi con una determinata categoria o proprietà

  1. Se la casella Legenda non è visibile, fare clic con il pulsante destro del mouse sul grafico, quindi scegliere Mostra legenda.

  2. Nella casella Legenda verificare se la categoria o la proprietà del nodo è visualizzata nell'elenco.

  3. Se l'elenco non include la categoria o la proprietà, fare clic su Aggiungi, scegliere Categoria nodo o Proprietà nodo, quindi selezionare la categoria o la proprietà.

    Nota

    Per creare e assegnare una categoria a un nodo, vedere Assegnare categorie a nodi e collegamenti. Per creare e assegnare una proprietà a un nodo, vedere Assegnare proprietà a nodi e collegamenti.

  4. Nella casella Legenda fare clic sull'elenco a discesa accanto alla categoria o alla proprietà.

  5. Utilizzare la tabella seguente per selezionare lo stile che si desidera modificare:

    Per modificare

    Select

    Colore sfondo

    Background

    Colore del contorno

    Tratto

    Colore del testo

    Primo piano

    Icona

    Icone

  6. Nella finestra di dialogo di selezione scegliere una delle seguenti opzioni:

    Per applicare un

    Si seguano le seguenti istruzioni

    Set di colori (o icone)

    Fare clic sull'elenco a discesa Seleziona set di colori (o icone), quindi fare clic su un set di colori (o di icone).

    Per ripristinare il colore predefinito (o l'icona predefinita), nell'elenco a discesa Seleziona set di colori (o icone) fare clic su Nessuno.

    Colore specifico (o un'icona specifica)

    Fare clic sull'elenco a discesa relativo alla categoria o al valore della proprietà, quindi selezionare un colore (o un'icona).

  7. Una volta completata l'operazione, fare clic su OK.

    Nota

    È possibile ridisporre, eliminare o disattivare temporaneamente stili nella casella Legenda. Per ulteriori informazioni, vedere Modificare la casella Legenda.

Per applicare un colore predefinito ai collegamenti con una determinata categoria o proprietà

  1. Se la casella Legenda non è visibile, fare clic con il pulsante destro del mouse sul grafico, quindi scegliere Mostra legenda.

  2. Nella casella Legenda verificare se la categoria o la proprietà è visualizzata nell'elenco.

  3. Se l'elenco non include la categoria o la proprietà, fare clic su Aggiungi, scegliere Categoria collegamento o Proprietà collegamento, quindi selezionare la categoria o la proprietà.

    Nota

    Per creare e assegnare una categoria a un collegamento, vedere Assegnare categorie a nodi e collegamenti. Per creare e assegnare una proprietà a un collegamento, vedere Assegnare proprietà a nodi e collegamenti.

  4. Nella casella Legenda fare clic sull'elenco a discesa accanto alla categoria o alla proprietà.

  5. Utilizzare la tabella seguente per selezionare lo stile che si desidera modificare:

    Per modificare

    Select

    Colore della punta della freccia

    Background

    Colore del contorno

    Tratto

  6. Nella casella Selezione set colori scegliere una delle seguenti opzioni:

    Per applicare un

    Si seguano le seguenti istruzioni

    Set di colori

    Fare clic sull'elenco a discesa Seleziona set di colori, quindi fare clic su un set di colori.

    Per ripristinare il colore predefinito, nell'elenco a discesa Seleziona set di colori fare clic su Nessuno.

    Colore specifico

    Fare clic sull'elenco a discesa relativo al tipo o al valore della proprietà per selezionare un colore.

  7. Una volta completata l'operazione, fare clic su OK.

    Nota

    È possibile ridisporre, eliminare o disattivare temporaneamente stili nella casella Legenda. Per ulteriori informazioni, vedere Modificare la casella Legenda.

Applicare stili personalizzati a nodi e collegamenti

È possibile applicare stili personalizzati agli elementi seguenti:

  • Singoli nodi e collegamenti

  • Gruppi di nodi e collegamenti

  • Gruppi di nodi e collegamenti in base a determinate condizioni

Per applicare uno stile personalizzato a un singolo nodo

  1. Fare clic con il pulsante destro del mouse sul nodo di cui si desidera personalizzare lo stile, quindi scegliere Visualizza DGML.

    In Visual Studio viene aperto il file con estensione dgml del grafico e viene evidenziato l'elemento <Node/> relativo a tale nodo.

  2. Nell'elemento <Node/> aggiungere uno qualsiasi dei seguenti attributi per personalizzarne lo stile:

    Per modificare

    Aggiungere il seguente attributo

    Colore sfondo

    Background="ColorNameOrHexadecimalValue"

    Contorno

    Stroke="ColorNameOrHexadecimalValue"

    Spessore del contorno

    StrokeThickness="StrokeValue"

    Colore del testo

    Foreground="ColorNameOrHexadecimalValue"

    Icona

    Icon="IconFilePathLocation"

    Dimensione del testo

    FontSize="FontSizeValue"

    Tipo di testo

    FontFamily="FontFamilyName"

    Spessore del testo

    FontWeight="FontWeightValue"

    Stile del testo

    FontStyle="FontStyleName"

    È possibile, ad esempio, specificare Italic come stile del testo.

    Trama

    Style="Glass"

    - oppure -

    Style="Plain"

    Forma

    Shape

    Ad esempio:

    <Nodes>
       <Node Id="MyNode" Background="Green" Stroke="#FF000000"
       Foreground="White" Icon="...\Graph Icons\MyNodeIcon.jpg"/>
    </Nodes>
    

Per applicare uno stile personalizzato a un singolo collegamento

  1. Nel grafico spostare il puntatore del mouse sul collegamento per visualizzare la descrizione comando e identificare il nodo di origine e il nodo di destinazione del collegamento.

  2. Fare clic con il pulsante destro del mouse sul grafico, quindi scegliere Visualizza DGML.

    In Visual Studio viene aperto il file con estensione dgml del grafico.

  3. Trovare l'elemento <Link/> che contiene i nomi del nodo di origine e del nodo di destinazione.

  4. Nell'elemento <Link/> aggiungere uno qualsiasi dei seguenti attributi per personalizzarne lo stile:

    Per modificare

    Aggiungere il seguente attributo

    Colore della punta della freccia

    Background="ColorNameOrHexadecimalValue"

    Colore del contorno

    Stroke="ColorNameOrHexadecimalValue"

    Spessore del contorno

    StrokeThickness="StrokeValue"

    Stile del contorno

    StrokeDashArray="StrokeArrayValues"

    Ad esempio:

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

Per applicare stili personalizzati a un gruppo di nodi o collegamenti

  1. Assegnare qualsiasi categoria o proprietà desiderata ai nodi o ai collegamenti.

    Per ulteriori informazioni, vedere Assegnare categorie a nodi e collegamenti e Assegnare proprietà a nodi e collegamenti.

  2. Fare clic con il pulsante destro del mouse sulla superficie del grafico, quindi scegliere Visualizza DGML.

    In Visual Studio viene aperto il file con estensione dgml del grafico.

  3. Se non è presente un elemento <Styles></Styles>, aggiungerne uno sotto l'elemento <DirectedGraph></DirectedGraph> dopo l'elemento <Links></Links>.

  4. Nell'elemento <Styles></Styles>, sotto l'elemento <Style/>, specificare gli attributi seguenti:

    • TargetType="Node | Link | Graph"

    • GroupLabel="NameInLegendBox"

    • ValueLabel="NameInStylePickerBox"

    Per applicare un stile personalizzato a tutti i tipi di destinazione, non utilizzare una condizione.

Per applicare uno stile condizionale a gruppi di nodi o di collegamenti

  1. Nell'elemento <Style/> aggiungere un elemento <Condition/> contenente un attributo Expression per specificare un'espressione che restituisca un valore booleano.

    Ad esempio:

    <Condition Expression="MyCategory"/>
    

    - oppure -

    <Condition Expression="MyCategory > 100"/>
    

    - oppure -

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

    Questa espressione utilizza la sintassi BNF(Backus-Naur Form) seguente:

    <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> ::= valore letterale stringa tra virgolette singole o doppie

    <Number> ::= stringa di cifre con virgola decimale facoltativa

    È possibile specificare più elementi <Condition/> che devono essere tutti true affinché lo stile venga applicato.

  2. Sulla riga successiva, dopo l'elemento <Condition/>, aggiungere uno o più elementi <Setter/> per specificare un attributo Property e un attributo fisso Value o un attributo calcolato Expression da applicare al grafico, ai nodi o ai collegamenti che soddisfano la condizione.

    Ad esempio:

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

Per fare un semplice esempio completo, la condizione seguente specifica che un nodo viene visualizzato in verde o in rosso a seconda che la categoria Passed sia impostata su True o su 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>

Nella tabella seguente sono incluse alcune condizioni di esempio che è possibile utilizzare:

Per

DGML di esempio

Impostare la dimensione del carattere come una funzione del numero di righe di codice che modifica inoltre la dimensione del nodo. In questo esempio viene utilizzata una sola espressione condizionale per impostare più proprietà, FontSize e FontFamily.

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

Impostare il colore di sfondo di un nodo in base alla proprietà Coverage. Gli stili vengono valutati nell'ordine in cui appaiono, in modo analogo alle istruzioni if-else.

In questo esempio:

  1. Se Coverage è > 80, impostare la proprietà Background su verde.

  2. Se invece Coverage è > 50, impostare la proprietà Background su una sfumatura di arancione in base al valore della proprietà Coverage.

  3. Diversamente impostare la proprietà Background su una sfumatura di rosso in base al valore della proprietà Coverage.

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

Impostare la proprietà Shape su None, in modo che l'icona sostituisca la forma. Utilizzare la proprietà Icon per specificare la posizione dell'icona.

<DirectedGraph xmlns="https://schemas.microsoft.com/vs/2009/dgml">
<Nodes>
   <Node Id="Automation" Category="Test" Label="Automation" />
   <Node Id="C# Provider" Category="Provider" Label="C# Provider" />
</Nodes>
<Categories>
   <Category Id="Provider" Icon="..\Icons\AddIn.png" Shape="None" />
   <Category Id="Test" Icon="..\Icons\Macro.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>

Modificare la casella Legenda

È possibile ridisporre, eliminare o disattivare temporaneamente stili nella casella Legenda:

  1. Fare clic con il pulsante destro del mouse su un stile nella casella Legenda.

  2. Effettuare una delle attività seguenti:

    Per

    Fare clic su

    Spostare lo stile in alto

    Sposta su

    Spostare l'elemento in basso

    Sposta giù

    Eliminare l'elemento

    Elimina

    Disattivare l'elemento

    Disabilita

    Riattivare l'elemento

    Abilita

Copiare stili da un grafico a un altro

  • Fare clic con il pulsante destro del mouse su un'area vuota del grafico di origine, scegliere Copia legenda, quindi incollare lo stile nel grafico di destinazione.

Organizzare nodi in gruppi

Per

Eseguire questi passaggi

Mostrare nodi con relazioni di contenimento come gruppi o collegamenti

Per mostrare collegamenti come gruppi, selezionare i nodi del contenitore, fare clic con il pulsante destro del mouse sulla selezione, scegliere Gruppo, quindi fare clic su Mostra come gruppo.

Per mostrare gruppi come collegamenti, selezionare i nodi del contenitore, fare clic con il pulsante destro del mouse sulla selezione, scegliere Gruppo, quindi fare clic su Mostra come collegamento.

Per mostrare tutti i gruppi come collegamenti, fare clic con il pulsante destro del mouse sul grafico, scegliere Gruppo, quindi fare clic su Mostra tutto come collegamenti.

Per mostrare tutti i collegamenti come gruppi, fare clic con il pulsante destro del mouse sul grafico, scegliere Gruppo, quindi fare clic su Mostra tutto come gruppi.

Aggiungere un nuovo gruppo intorno ai nodi selezionati

  1. Fare clic con il pulsante destro del mouse sulla selezione, scegliere Gruppo, quindi fare clic su Aggiungi gruppo padre.

  2. Fare clic con il pulsante destro del mouse sul nuovo gruppo, quindi scegliere Proprietà.

  3. Nella proprietà Etichetta rinominare il gruppo.

Aggiungere un nuovo gruppo intorno ai nodi con categorie o proprietà specifiche

  1. Per visualizzare la casella Selezione, fare clic con il pulsante destro del mouse sulla superficie del grafico, quindi scegliere Mostra selezione avanzata.

  2. Nella casella Selezione fare clic sulle categorie o sulle proprietà desiderate.

  3. Fare clic con il pulsante destro del mouse sulla superficie del grafico, scegliere Gruppo, quindi fare clic su Aggiungi gruppo padre.

  4. Fare clic con il pulsante destro del mouse sul nuovo gruppo, quindi scegliere Proprietà.

  5. Nella proprietà Etichetta rinominare il gruppo.

Raggruppare nodi in base ai relativi contenitori

  1. Scegliere Finestre dal menu Architettura, quindi fare clic su Esplora architettura.

  2. Utilizzare Esplora architettura per trovare e selezionare tutti i nodi che si desidera raggruppare.

    Per ulteriori informazioni, vedere Procedura: trovare codice tramite Esplora architettura.

  3. Sul lato destro della colonna corrente fare clic sulla colonna dell'azione compressa per espanderla.

    NotaNota
    La colonna dell'azione viene visualizzata evidenziata quando si sposta il puntatore su di essa.
  4. Nella colonna dell'azione fare clic su Contenuto da.

  5. Dalla colonna successiva trascinare i gruppi di contenitori sul grafico.

  6. Fare clic con il pulsante destro del mouse sulla superficie del grafico, scegliere Gruppo, quindi fare clic su Mostra tutto come gruppi.

Raggruppare nodi in base ai relativi valori delle proprietà

  1. Salvare il grafico su disco come file con estensione dgml.

  2. Scegliere Finestre dal menu Architettura, quindi fare clic su Esplora architettura.

  3. In Esplora architettura fare clic su Seleziona file in File system.

  4. Nella colonna successiva fare clic sul file con estensione dgml salvato

  5. Utilizzare Esplora architettura per trovare e selezionare tutti i nodi che si desidera raggruppare.

    Per ulteriori informazioni, vedere Procedura: trovare codice tramite Esplora architettura.

  6. Sul lato destro della colonna corrente fare clic sulla colonna dell'azione compressa per espanderla.

    NotaNota
    La colonna dell'azione viene visualizzata evidenziata quando si sposta il puntatore su di essa.
  7. Nella colonna dell'azione fare clic su Raggruppa per proprietà in Raggruppamento.

  8. Nella colonna successiva selezionare le proprietà che si desidera utilizzare come gruppi.

    Viene visualizzata la colonna successiva con i valori della proprietà disponibili.

  9. Dalla colonna successiva trascinare i gruppi di valori delle proprietà sul grafico.

  10. Fare clic con il pulsante destro del mouse sulla superficie del grafico, scegliere Gruppo, quindi fare clic su Mostra tutto come gruppi.

Rimuovere gruppi

Selezionare il gruppo o gruppi che si desidera rimuovere, fare clic con il pulsante destro del mouse sulla selezione, scegliere Gruppo, quindi fare clic su Rimuovi gruppo.

Rimuovere nodi dal relativo gruppo padre fino al padre del padre, oppure all'esterno di un gruppo se non dispongono di un gruppo padre del padre

Selezionare i nodi che si desidera spostare, fare clic con il pulsante destro del mouse sulla selezione, scegliere Gruppo, quindi fare clic su Rimuovi dall'elemento padre.

È inoltre possibile organizzare nodi in gruppi modificando il file con estensione dgml del grafico.

Per utilizzare un nodo esistente come gruppo o per aggiungere un nuovo gruppo

  1. Per utilizzare un nodo esistente come gruppo, fare clic con il pulsante destro del mouse sul nodo che si desidera utilizzare come un nodo di gruppo, quindi fare clic su Visualizza DGML.

    In Visual Studio viene aperto il file con estensione dgml del grafico e viene evidenziato l'elemento <Node/> relativo a tale nodo.

    - oppure -

    1. Per aggiungere un nuovo gruppo, fare clic con il pulsante destro del mouse su un'area vuota del grafico, quindi scegliere Visualizza DGML.

    2. Nella sezione <Node/> aggiungere un nuovo elemento <Nodes>.

  2. Nell'elemento <Node/> aggiungere un attributo Group per specificare se il gruppo viene visualizzato espanso o compresso. Ad esempio:

    <Nodes>
       <Node Id="MyFirstGroup" Group="Expanded" />
       <Node Id="MySecondGroup" Group="Collapsed" />
    </Nodes>
    
  3. Nella sezione <Links> assicurarsi che sia presente un elemento <Link/> con gli attributi seguenti per ogni relazione tra un nodo di gruppo e i relativi nodi figlio:

    • Attributo Source che specifica il nodo di gruppo

    • Attributo Target che specifica il nodo figlio

    • Attributo Category che specifica una relazione Contains tra il nodo di gruppo e il relativo nodo figlio

    Ad esempio:

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

    Per ulteriori informazioni sull'attributo Category, vedere Assegnare categorie a nodi e collegamenti.

Assegnare proprietà a nodi e collegamenti

È possibile organizzare nodi e collegamenti mediante l'assegnazione di proprietà. Ad esempio, è possibile selezionare nodi con proprietà specifiche in modo che sia possibile raggrupparli, modificarne lo stile o nasconderli.

Per assegnare una proprietà a un nodo

  1. Fare clic con il pulsante destro del mouse sul nodo, quindi scegliere Visualizza DGML.

    In Visual Studio viene aperto il file con estensione dgml del grafico e viene evidenziato l'elemento <Node/> relativo a tale nodo.

  2. Nell'elemento <Node/> specificare il nome della proprietà e il relativo valore. Ad esempio:

    <Nodes>
       <Node Id="MyNode" MyPropertyName="PropertyValue" />
    </Nodes>
    
  3. Aggiungere un elemento <Property/> alla sezione <Properties> per specificare attributi quali il nome visibile e il tipo di dati:

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

Per assegnare una proprietà a un collegamento

  1. Nel grafico spostare il puntatore del mouse sul collegamento per visualizzare la descrizione comando e identificare il nodo di origine e il nodo di destinazione del collegamento.

  2. Fare clic con il pulsante destro del mouse sul grafico, quindi scegliere Visualizza DGML.

    In Visual Studio viene aperto il file con estensione dgml del grafico.

  3. Trovare l'elemento <Link/> che contiene i nomi del nodo di origine e del nodo di destinazione.

  4. Nell'elemento <Node/> specificare il nome della proprietà e il relativo valore. Ad esempio:

    <Links>
       <Link Source="MyFirstNode" Target="MySecondNode" MyPropertyName="PropertyValue" />
    </Links>
    
  5. Aggiungere un elemento <Property/> alla sezione <Properties> per specificare attributi quali il nome visibile e il tipo di dati:

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

Assegnare categorie a nodi e collegamenti

È possibile organizzare nodi mediante l'assegnazione di categorie. Ad esempio, è possibile selezionare nodi appartenenti a determinate categorie in modo che sia possibile raggrupparli, modificarne lo stile o nasconderli. È possibile evidenziare collegamenti con determinate categorie. Per ulteriori informazioni, vedere le sezioni che seguono:

  • Organizzare nodi in gruppi

  • Modificare lo stile di nodi e collegamenti

  • Nascondere o mostrare nodi

Per assegnare una categoria a un nodo

  • Per assegnare una categoria predefinita, ad esempio Categoria 1, fare clic con il pulsante destro del mouse sul nodo, scegliere Categorizza, quindi fare clic su una categoria predefinita.

- oppure -

  • Per creare e assegnare una categoria personalizzata:

    • Fare clic sul nodo che si desidera suddividere in categorie, premere F4 per aprire la finestra Proprietà, digitare il nome della categoria nella proprietà Nuova categoria del nodo, quindi premere INVIO.

    - oppure -

    1. Fare clic con il pulsante destro del mouse sul nodo, quindi scegliere Visualizza DGML.

      In Visual Studio viene aperto il file con estensione dgml del grafico e viene evidenziato l'elemento <Node/> relativo a tale nodo.

    2. Nell'elemento <Node/> aggiungere un attributo Category per specificare il nome della categoria. Ad esempio:

      <Nodes>
         <Node Id="MyNode" Category="MyCategory" />
      </Nodes>
      
    3. Aggiungere un elemento <Category/> alla sezione <Categories> in modo che sia possibile utilizzare l'attributo Label per specificare il testo visualizzato per tale categoria:

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

Per assegnare una categoria a un collegamento

  1. Nel grafico spostare il puntatore del mouse sul collegamento per visualizzare la descrizione comando e identificare il nodo di origine e il nodo di destinazione del collegamento.

  2. Fare clic con il pulsante destro del mouse sul grafico, quindi scegliere Visualizza DGML.

    In Visual Studio viene aperto il file con estensione dgml del grafico.

  3. Trovare l'elemento <Link/> che contiene i nomi del nodo di origine e del nodo di destinazione.

  4. Nell'elemento <Link/> aggiungere un attributo Category per specificare il nome della categoria. Ad esempio:

    <Links>
       <Link Source="MyFirstNode" Target="MySecondNode" Category="MyCategory"
    </Links>
    
  5. Aggiungere un elemento <Category/> alla sezione <Categories> in modo che sia possibile utilizzare l'attributo Label per specificare il testo visualizzato per tale categoria:

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

È possibile creare categorie gerarchiche per facilitare l'organizzazione di nodi e aggiungere attributi alle categorie figlio tramite l'ereditarietà.

Per creare categorie gerarchiche

  • Aggiungere un elemento <Category/> per la categoria padre, quindi aggiungere l'attributo BasedOn all'elemento <Category/> della categoria figlio.

    Ad esempio:

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

    In questo esempio lo sfondo di MyFirstNode è verde perché il relativo attributo Category eredita l'attributo Background di MyParentCategory.

Collegare elementi ai nodi

È possibile collegare elementi quali documenti o URL a un nodo modificando il file dgml del grafico e aggiungendo un attributo Reference all'elemento <Node/> per tale nodo. L'attributo Reference specifica il percorso di tale contenuto. Il percorso può essere assoluto oppure relativo alla posizione del file con estensione dgml. È quindi possibile aprire e visualizzare il contenuto dal nodo nel grafico.

Nota

Affinché sia possibile visualizzare l'elemento o gli elementi a cui si fa riferimento, è necessario che siano presenti.

Ad esempio, è possibile collegare i seguenti elementi:

  • Per descrivere le modifiche apportate a una classe, è possibile collegare l'URL di un elemento di lavoro, un documento o un altro file con estensione dgml al nodo relativo a una classe.

  • È possibile collegare un diagramma livello a un nodo di gruppo che rappresenta un livello nell'architettura logica del software.

  • Per visualizzare ulteriori informazioni su un componente che espone un'interfaccia, è possibile associare un diagramma componente al nodo relativo a tale interfaccia.

  • Collegare un nodo a un elemento di lavoro o un bug di Team Foundation Server o ad altre informazioni correlate al nodo.

Per collegare un elemento a un nodo

  1. Nel grafico, fare clic con il pulsante destro del mouse sul nodo e scegliere Visualizza DGML.

    In Visual Studio viene aperto il file con estensione dgml del grafico e viene evidenziato l'elemento <Node/> relativo a tale nodo.

  2. Eseguire una delle attività elencate nella tabella seguente:

    Per collegare

    Si seguano le seguenti istruzioni

    Un singolo elemento

    • Nell'elemento <Node/> aggiungere un attributo Reference per specificare la posizione dell'elemento.

      NotaNota
      È possibile specificare un solo attributo Reference per ogni elemento <Node/>.

    Ad esempio:

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

    Più elementi

    1. Nell'elemento <Node/> aggiungere un nuovo attributo per specificare la posizione di ogni riferimento.

    2. Nella sezione <Properties>:

      1. Aggiungere un elemento <Property/> per ogni nuovo tipo di riferimento.

      2. Impostare l'attributo Id sul nome dell'attributo del nuovo riferimento.

      3. Aggiungere l'attributo IsReference e impostarlo su True affinché il riferimento venga visualizzato nel menu di scelta rapida Vai del nodo.

      4. Utilizzare l'attributo Label per specificare il testo visualizzato nel menu di scelta rapida Vai del nodo.

    Ad esempio:

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

    Nel grafico il nome del nodo viene visualizzato sottolineato.

  3. Utilizzare l'attributo ReferenceTemplate per specificare una stringa comune, ad esempio un URL, utilizzata da più riferimenti anziché ripetere tale stringa nel riferimento.

    L'attributo ReferenceTemplate specifica un segnaposto per il valore del riferimento. Nell'esempio seguente il segnaposto {0} nell'attributo ReferenceTemplate verrà sostituito dai valori degli attributi MyFirstReference e MySecondReference nell'elemento <Node/> per produrre un percorso completo:

    <Nodes>
       <Node Id="MyNode" MyFirstReference="MyFirstDocument" MySecondReference="MySecondDocument"/>
       <Node Id="MySecondNode" MyFirstReference="AnotherFirstDocument" MySecondReference="AnotherSecondDocument"/>
    </Nodes>
    <Properties>
       <Property Id="MyFirstReference" Label="My First Document" DataType="System.String" IsReference="True" ReferenceTemplate="http://www.Fabrikam.com/FirstDocuments/{0}.asp"/>
       <Property Id="MySecondReference" Label="My Second Document" DataType="System.String" IsReference="True" ReferenceTemplate=" http://www.Fabrikam.com/SecondDocuments/{0}.asp"/>
    </Properties>
    
  4. Eseguire una delle attività seguenti per visualizzare l'elemento a cui si fa riferimento:

    Per visualizzare

    Attenersi alla procedura seguente

    Un singolo elemento

    Fare doppio clic sul nodo.

    - oppure -

    Fare clic con il pulsante destro del mouse sul nodo, scegliere Vai, quindi fare clic sull'elemento.

    Più elementi

    Fare clic con il pulsante destro del mouse sul nodo, scegliere Vai, quindi fare clic su un elemento.

Creare alias per percorsi di utilizzo comune

Sostituendo i percorsi di utilizzo comune con alias è possibile ridurre le dimensioni del file con estensione dgml e il tempo necessario per caricare o salvare il file. Per creare un alias, aggiungere una sezione <Paths></Paths> alla fine del file con estensione dgml. In questa sezione aggiungere un elemento <Path/> per definire un alias per il percorso:

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

Per fare riferimento all'alias da un elemento nel file con estensione dgml, racchiudere il valore Id dell'elemento <Path/> con un segno di dollaro ($) e parentesi (()):

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

Informazioni su DGML (Directed Graph Markup Language)

DGML utilizza semplice codice XML per descrivere grafici diretti ciclici e aciclici. Un grafico diretto è un set di nodi connessi da collegamenti o bordi. I nodi e i collegamenti possono essere utilizzati per rappresentare strutture di rete, ad esempio elementi in un progetto software. Utilizzare DGML per visualizzare informazioni, eseguire analisi di complessità o semplicemente esplorare e modificare grafici diretti.

I nodi e i collegamenti sono detti elementi del grafico o semplicemente elementi. Nella tabella seguente sono descritti i tipi di elementi utilizzati in DGML:

Nota

Quando si modifica un file con estensione dgml, IntelliSense consente di identificare gli attributi disponibili per ogni elemento e i relativi valori. Per specificare il colore in un attributo, utilizzare nomi dei colori comuni, come "Blue", o valori ARGB esadecimali, come "#ffa0b1c3." In DGML viene utilizzato un piccolo subset di formati di definizione dei colori WPF (Windows Presentation Foundation). Per ulteriori informazioni, vedere Classe Colors.

Elemento

Formato di esempio

<DirectedGraph></DirectedGraph>

Questo elemento è l'elemento radice di un documento grafico diretto, con estensione dgml. Tutti gli altri elementi DGML sono inclusi nell'ambito di questo elemento.

Nell'elenco seguente vengono descritti gli attributi facoltativi che è possibile includere:

  • Background - Colore dello sfondo del grafico

  • BackgroundImage - Percorso di un file di immagine da utilizzare come sfondo del grafico.

  • ButterflyMode - Se True, vengono visualizzati solo i nodi collegati con lo stesso percorso dei nodi selezionati. Se non è selezionato alcun nodo, nel grafico viene selezionato l'hub primario.

    NotaNota
    I collegamenti circolari non vengono visualizzati in questa modalità.Al contrario, i nodi che partecipano a relazioni circolari vengono copiati in modo che siano visualizzati su entrambi i lati dei nodi selezionati.Le dipendenze che si trovano a più di un livello dal nodo selezionato non verranno necessariamente visualizzate nell'ordine relativo, poiché il layout del grafico è basato sul percorso più breve dal nodo selezionato.

    Per ulteriori informazioni, vedere Procedura: esplorare documenti grafico e spostarsi tra di essi.

  • GraphDirection- Quando il grafico viene impostato sul layout struttura ad albero (Sugiyama), i nodi vengono disposti in modo che la maggior parte dei collegamenti vada nella direzione specificata: TopToBottom, BottomToTop, LeftToRight o RightToLeft. Per ulteriori informazioni, vedere Procedura: esplorare documenti grafico e spostarsi tra di essi.

  • Layout - Impostare il grafico su uno dei layout seguenti: None, Sugiyama (layout struttura ad albero), ForceDirected (raggruppamenti veloci) o DependencyMatrix. Per ulteriori informazioni, vedere Procedura: esplorare documenti grafico e spostarsi tra di essi.

  • NeighborhoodDistance- Quando il grafico viene impostato sul layout struttura ad albero o raggruppamenti veloci, vengono visualizzati solo i nodi la cui distanza dai nodi selezionati corrisponde a un numero di collegamenti specificato (1-7). Per ulteriori informazioni, vedere Procedura: esplorare documenti grafico e spostarsi tra di essi.

  • Title - Nome del grafico

  • ZoomLevel- Livello di zoom utilizzato per visualizzare inizialmente il grafico. Specificare un valore a virgola mobile, dove 1 corrisponde a 100%, oppure Fit per adattare il grafico alle dimensioni della finestra.

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

Questo elemento facoltativo contiene un elenco di elementi <Node/> che definiscono i nodi nel grafico. Per ulteriori informazioni, vedere l'elemento <Node/>.

NotaNota
Quando si fa riferimento a un nodo non definito in un elemento <Link/>, il grafico crea automaticamente un elemento <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/>

Questo elemento definisce un singolo nodo. Esso viene visualizzato nell'elenco di elementi <Nodes><Nodes/>.

L'elemento deve includere gli attributi seguenti:

  • Id- Nome univoco del nodo e valore predefinito dell'attributo Label, se non viene specificato alcun attributo Label distinto. Questo nome deve corrispondere all'attributo Source o Target del collegamento a cui fa riferimento.

Nell'elenco seguente vengono descritti alcuni degli attributi facoltativi che è possibile includere:

  • Label - Nome visualizzato del nodo

  • Attributi di stile. Per ulteriori informazioni, vedere Applicare stili personalizzati a nodi e collegamenti.

  • Category - Nome di una categoria che identifica gli elementi che condividono questo attributo. Per ulteriori informazioni, vedere l'elemento <Category/>.

  • Property- Nome di una proprietà che identifica gli elementi che hanno lo stesso valore della proprietà. Per ulteriori informazioni, vedere l'elemento <Property/>.

  • Group- Se il nodo contiene altri nodi, impostare questo attributo su Expanded o su Collapsed, per visualizzare o nascondere il relativo contenuto. Deve essere presente un elemento <Link/> che include l'attributo Category="Contains" e specifica il nodo padre come nodo di origine e il nodo figlio come nodo di destinazione. Per ulteriori informazioni, vedere Organizzare nodi in gruppi.

  • Visibility - Impostare questo attributo su Visible, Hidden o Collapsed. Vengono utilizzati System.Windows.Visibility. Per ulteriori informazioni, vedere Nascondere o mostrare nodi.

  • Reference - Impostare questo attributo per collegare un nodo a un documento o a un URL. Per ulteriori informazioni, vedere Collegare elementi ai nodi.

<?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" ategory="Automobile" />
   </Nodes>
   <Links>
      <Link ... />
   </Links>
   <Categories>
      <Category Id="Person" Background="Orange" />
      <Category Id="Automobile" Background="Yellow"/>
   </Categories>
</DirectedGraph>

<Links></Links>

Questo elemento contiene l'elenco di elementi <Link> che definiscono i collegamenti tra i nodi. Per ulteriori informazioni, vedere l'elemento <Link/>.

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

<Link/>

Questo elemento definisce un singolo collegamento che connette un nodo di origine a un nodo di destinazione. Esso viene visualizzato nell'elenco di elementi <Links></Links>.

NotaNota
Se questo elemento fa riferimento a un nodo non definito, il documento grafico crea automaticamente un nodo con gli attributi specificati, se presenti.

L'elemento deve includere gli attributi seguenti:

  • Source - Nodo di origine del collegamento

  • Target - Nodo di destinazione del collegamento

Nell'elenco seguente vengono descritti alcuni degli attributi facoltativi che è possibile includere:

  • Label - Nome visualizzato del collegamento

  • Attributi di stile. Per ulteriori informazioni, vedere Applicare stili personalizzati a nodi e collegamenti.

  • Category - Nome di una categoria che identifica gli elementi che condividono questo attributo. Per ulteriori informazioni, vedere l'elemento <Category/>.

  • Property- Nome di una proprietà che identifica gli elementi che hanno lo stesso valore della proprietà. Per ulteriori informazioni, vedere l'elemento <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>

Questo elemento contiene l'elenco di elementi <Category/>. Per ulteriori informazioni, vedere l'elemento <Category/>.

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

<Category/>

Questo elemento definisce un attributo Category, utilizzato per identificare gli elementi che condividono questo attributo. Un attributo Category può essere utilizzato per organizzare gli elementi del grafico, fornire attributi condivisi tramite ereditarietà o definire metadati aggiuntivi.

L'elemento deve includere gli attributi seguenti:

  • Id- Nome univoco della categoria e valore predefinito dell'attributo Label, se non viene specificato alcun attributo Label distinto.

Nell'elenco seguente vengono descritti alcuni degli attributi facoltativi che è possibile includere:

  • Label- Nome descrittivo per la categoria.

  • BasedOn - Categoria padre da cui eredita l'oggetto <Category/> dell'elemento corrente.

    Nell'esempio per questo elemento la categoria FailedTest eredita l'attributo Stroke dalla categoria PassedTest. Per ulteriori informazioni, vedere "Per creare categorie gerarchiche" in Assegnare categorie a nodi e collegamenti.

Le categorie forniscono inoltre il comportamento di base dei modelli che controlla l'aspetto di nodi e collegamenti quando vengono visualizzati in un grafico. Per ulteriori informazioni, vedere Applicare stili personalizzati a nodi e collegamenti.

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

Questo elemento contiene l'elenco di elementi <Property/>. Per ulteriori informazioni, vedere l'elemento <Property/>.

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

<Property/>

Questo elemento definisce un attributo Property che è possibile utilizzare per assegnare un valore a qualsiasi attributo o elemento DGML, incluse categorie e altre proprietà.

L'elemento deve includere gli attributi seguenti:

  • Id- Nome univoco della proprietà e valore predefinito dell'attributo Label, se non viene specificato alcun attributo Label distinto.

  • DataType - Tipo di dati archiviati dalla proprietà

Se si desidera che la proprietà venga visualizzata nella finestra Proprietà, utilizzare la proprietà Label per specificare il nome visualizzato della proprietà.

Per ulteriori informazioni, vedere Assegnare proprietà a nodi e collegamenti.

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

Vedere anche

Concetti

Procedura: generare grafici di dipendenze per il codice .NET

Altre risorse

Procedura: esplorare documenti grafico e spostarsi tra di essi

Procedura: esplorare il codice con grafici di dipendenze