Modificare e personalizzare grafici dipendenze

È possibile modificare i grafici dipendenze senza influire sul codice sottostante.Ciò risulta utile per concentrarsi sugli elementi principali o per comunicare informazioni sul codice.Ad esempio, per evidenziare le aree interessanti, è possibile selezionare nodi e filtrarli, modificare lo stile di nodi e collegamenti, nascondere o nodi di eliminazione e organizzare nodi mediante le proprietà, delle categorie, o i gruppi.

È inoltre possibile personalizzare ulteriormente il grafico modificando il file Directed Graph Markup Language (.dgml) del grafico.È ad esempio possibile modificare degli elementi per specificare stili personalizzati, assegnare proprietà e categorie a nodi e collegamenti o collegare nodi a elementi quali documenti, URL e altri grafi.

[!NOTA]

Visual studio esegue 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, tutti gli attributi aggiunti a un elemento si ridispongono in ordine alfabetico.Per ulteriori informazioni sugli elementi DGML, vedere Informazioni su DGML (Directed Graph Markup Language).

Requisiti

In questo argomento

  • Selezionare i nodi o i collegamenti

  • Rinominare collegamenti o i nodi

  • Visualizzare o nascondere i nodi e i collegamenti

  • Aggiungere nodi e collegamenti

  • Aggiungere commenti al grafico

  • Eliminare nodi

  • Raggruppare nodi

  • Unire i grafici

  • Modificare lo stile del grafico

  • Modificare lo stile di collegamento o del nodo

  • Copiare stili da un grafico a un altro

  • Assegnare proprietà a nodi e collegamenti

  • Assegnare categorie a nodi e collegamenti

  • Collegare elementi ai nodi o ai collegamenti

  • Creare alias per percorsi di utilizzo comune

Selezionare i nodi o i collegamenti

Per

Eseguire questi passaggi

Selezionare tutti i nodi non selezionati

Aprire il menu di scelta rapida per i nodi selezionati.Scegliere Seleziona, Inverti selezione.

Selezionare nodi aggiuntivi che si collegano a quelli selezionati

Aprire il menu di scelta rapida per i nodi selezionati.Scegliere Seleziona e uno dei seguenti:

  • Per selezionare altri nodi collegati direttamente al nodo selezionato, scegliere Dipendenze in ingresso.

  • Per selezionare altri nodi che si collegano direttamente dal nodo selezionato, scegliete Le dipendenze in uscita.

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

  • Per selezionare inoltre tutti i nodi di collegamento da e verso il nodo selezionato, scegliete Sottografico collegato.

  • Per selezionare inoltre tutti gli elementi figlio del nodo selezionato, scegliete Figli.

Rinominare collegamenti o i nodi

  • Selezionare il nodo o il collegamento.Premere F2.Quando la casella di modifica viene visualizzata, rinominare il nodo o il collegamento.

    Se l'etichetta è visibile, selezionare l'etichetta.

Visualizzare o nascondere i nodi e i collegamenti

Nascondere i nodi impedisce loro la partecipazione in algoritmi di layout.Per impostazione predefinita, i collegamenti tra gruppi sono nascosti.I collegamenti tra gruppi sono collegamenti singoli che connettono nodi tra gruppi.Quando i gruppi vengono compressi, tutti i collegamenti tra gruppi presenti nel grafico vengono aggregati in singoli collegamenti tra gruppi.Quando si espande un gruppo e i nodi selezionati nel gruppo, i collegamenti tra gruppi vengono visualizzati mostrando le dipendenze nel gruppo.

Nota di avvisoAttenzione

Prima di condividere un grafico creato in Visual Studio Ultimate con coloro che utilizzano Visual Studio Premium o il Visual Studio Professional,assicurarsi di rendere visibili tutti i nodi o i collegamenti tra gruppi che desidera gli altri vedano.In caso contrario, gli utenti non saranno in grado di vedere tali elementi.

Nascondere o mostrare nodi

Per

Eseguire questi passaggi

Nascondere nodi selezionati

  1. Selezionare i nodi che si desidera nascondere.

  2. Aprire il menu di scelta rapida per i nodi selezionati o per il grafico.Scegliere Seleziona, Nascondi selezionati.

Nascondere nodi non selezionati

  1. Selezionare i nodi che si desidera rimangano visibili.

  2. Aprire il menu di scelta rapida per i nodi selezionati o per il grafico.Scegliere Seleziona, Nascondi non selezionati.

Mostra nodi nascosti

  • Per mostrare tutti i nodi nascosti in un gruppo, assicurarsi che il gruppo sia espanso per primo.Scegliere Mostra figliIcona Scopri figli nell'angolo in alto a sinistra del gruppo.

  • Per mostrare tutti i nodi nascosti, aprire il menu di scelta rapida per il grafico.Scegliere Selezione, Mostra tutto.

Nascondere i nodi modificando il file con estensione .dgml

  1. Aprire il menu di scelta rapida per il grafico.Scegliere Vai, DGML.

    Visual Studio apre il file .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>

Per mostrare o nascondere collegamenti

Per

Nella barra degli strumenti del grafico, aprire l'elenco Cambia la modalità di visualizzazione dei collegamenti nel grafico o aprire il menu di scelta rapida del grafico. Scegliere:

Mostrare sempre tutti i collegamenti tra gruppi

Mostra tutti i collegamenti tra gruppi

Questo nasconde i collegamenti aggregati tra gruppi.

Mostra solo i collegamenti tra gruppi per i nodi selezionati

Mostra collegamenti tra gruppi nei nodi selezionati

Nascondere sempre tutti i collegamenti tra gruppi

Nascondere 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à.

Aggiungere nodi e collegamenti

Aggiungere un nuovo nodo non definito

Eseguire questi passaggi

Posizione corrente del puntatore

Selezionare una posizione nel grafico dove inserire il nuovo nodo.Premere Inserisci.

Questo si collega al nodo selezionato

  1. Selezionare il nodo di origine.

    Una barra degli strumenti apparirà sopra il nodo.

    Barra degli strumenti del grafico delle dipendenze

  2. Sulla barra degli strumenti, scegliere Crea un nodo con la stessa categoria di questo nodo e aggiungi un collegamento ad essoBarra degli strumenti del grafico - Creare un nodo con collegamento.

  3. Scegliere una posizione nel grafico per inserire il nuovo nodo.

    (Tastiera: Premere TAB fino al nodo cui si desidera collegare lo stato attivo e quindi premere ALT+Inserisci).

Questo collega un nodo esistente con lo stato attivo corrente

Premere TAB fino al nodo cui si desidera collegare lo stato attivo.Premere ALT+Shift+Inserisci.

Aggiungere nodi per

Eseguire questi passaggi

Elementi nella soluzione

  1. Individuare l'elemento in Esplora soluzioni.Utilizzare la casella di ricerca Esplora soluzioni o cercare la soluzione.Per esplorare il codice in Esplora soluzioni, vedere Visualizzazione della struttura del codice.

    SuggerimentoSuggerimento
    Per trovare gli elementi che dispongono di dipendenze da un tipo o un membro, aprire il menu di scelta rapida per il tipo o il membro in Esplora soluzioni.Selezionare la relazione di interesse.Esplora soluzioni mostra solo gli elementi con dipendenze specificate.
  2. Trascinare gli elementi che interessano la superficie del grafico.

    Per includere la gerarchia padre contenitore per gli elementi selezionati quando si utilizza Visual Studio Ultimate, tenere premuto il tasto CTRL mentre si trascinano gli elementi nel grafico.

    - oppure -

    In Esplora soluzioni, aprire l'elenco Crea un nuovo documento grafico….Scegliere Aggiungi a grafico dipendenze attivo.Per aggiungere la gerarchia del contenitore padre, scegliere Aggiungi a grafico dipendenze attivo con gerarchia di contenimento.

    Vengono aggiunti nodi per gli elementi di codice di primo livello nella selezione.Per verificare se un nodo contiene elementi, spostare il puntatore del mouse sul nodo in modo che la freccia di espansione (^) venga visualizzata.Scegliere la freccia di espansione (^) per espandere il nodo.Per espandere tutti i nodi, aprire il menu di scelta rapida del grafico.Scegliere Gruppo, Espandi tutto.

    NotaNota
    Questo comando non è disponibile quando l'espansione di tutti i gruppi produce un grafico inutilizzabile o problemi di memoria.

Elementi correlati ai nodi nel grafico

Aprire il menu di scelta rapida del nodo.Scegliere Mostra e il tipo di relazione che interessa.

Per un assembly, scegliere:

  • assembly a cui si fa riferimento: Aggiungere gli assembly a cui fa riferimento questo assembly.Gli assembly esterni vengono visualizzati nel gruppo Esterni.

  • Assembly di riferimento: Aggiungere gli assembly della soluzione che fanno riferimento a questo assembly.

Per una classe, scegliere:

  • tipi di base: Per una classe, aggiungere la classe base e le interfacce implementate.

    Per un'interfaccia, aggiungere le interfacce di base.

  • tipi derivati: Per una classe, aggiungere le classi derivate.

    Per un'interfaccia, aggiungere le interfacce derivate e le classi o le struct implementate.

  • tutti i tipi di base: Aggiungere la gerarchia di interfaccia o di classe base in modo ricorsivo.

  • tutti i tipi derivati: Per una classe, aggiungere tutte le classi derivate in modo ricorsivo.

    Per un'interfaccia, aggiungere tutte le interfacce derivate e implementare classi o struct in modo ricorsivo.

  • gerarchia di contenimento: Aggiungere la gerarchia del contenitore padre.

  • tipi utilizzati: Aggiungere tutte le classi e membri che questa classe utilizza.

  • primo dai tipi: Aggiungere tutte le classi e membri che utilizzano questa classe.

Per un metodo, scegliere:

  • gerarchia di contenimento: Aggiungere la gerarchia del contenitore padre.

  • metodi chiamati: Aggiungere metodi che tale metodo chiama.

  • Chiamare-dai metodi: Aggiungere metodi che chiamano questo metodo.

  • Metodi sottoposti ai tipi di base: Per un metodo che esegue l'override di altri metodi o implementa il metodo di un'interfaccia, aggiungere tutti i metodi astratti o virtuali nelle classi di base che stanno eseguendo l'override e, se disponibile, il metodo di interfaccia implementato.

  • campi a cui si fa riferimento: Aggiungere campi cui questo metodo fa riferimento.

Per un campo, scegliere:

  • gerarchia di contenimento: Aggiungere la gerarchia del contenitore padre.

  • metodi di riferimento: Aggiungere metodi che fanno riferimento al campo.

Assembly .NET compilati (file dll o exe) o file binari

Utilizzare Esplora architettura per trovare e trascinare gli elementi e le relazioni nel grafico.

Per aggiungere un collegamento tra i nodi esistenti

  1. Selezionare il nodo di origine.

    Una barra degli strumenti apparirà sopra il nodo.

    Barra degli strumenti del grafico delle dipendenze

  2. Sulla barra degli strumenti, scegliere Crea un nuovo collegamento da questo nodo ad ogni nodo su cui ci cliccherà in futuroBarra degli strumenti del grafico - Creare un collegamento.Selezionare il nodo di destinazione.

    Viene visualizzato un collegamento tra due nodi.

Aggiungere commenti al grafico

  1. Selezionare il nodo in cui si desidera aggiungere un commento collegato.

    Una barra degli strumenti apparirà sopra il nodo.

    Barra degli strumenti del grafico delle dipendenze

  2. Sulla barra degli strumenti, scegliere Crea un nuovo nodo commento con un nuovo collegamento al nodo selezionatoBarra degli strumenti del grafico - Creare un commento con collegamento.

  3. Digitare i commenti.Per inserire una nuova riga, premere SHIFT+INVIO.

Eliminare nodi

È possibile eliminare i nodi da un grafico senza influenzare il codice sottostante.Per eliminare un nodo, selezionare il nodo quindi premere il tasto CANC.Quando si eliminano i nodi, le relative definizioni vengono rimosse dal file DGML (estensione .dgml).

Quando si eliminano i nodi da un gruppo, il pulsante Icona Recupera di nuovo figliRecupera di nuovo figli verrà visualizzato nel gruppo.Per recuperare i nodi mancanti, scegliere Recupera figliIcona Recupera di nuovo figli.I grafici creati modificando il DGML, aggiungendo i nodi non definiti, o usando versioni precedenti di Visual Studio Ultimate, non supporteranno questa funzionalità.

Nota di avvisoAttenzione

Prima di condividere un grafico creato mediante Visual Studio Ultimate con coloro che utilizzano Visual Studio Premium o Visual Studio Professional, assicurarsi che tutti i nodi che si desidera gli altri vedano siano visibili nel grafico.In caso contrario, gli utenti non saranno in grado di recuperare i nodi eliminati.

Raggruppare nodi

Per

Eseguire questi passaggi

Mostra nodi contenitore come nodi gruppo o nodi foglia.

Per visualizzare i nodi del contenitore come nodi foglia, selezionare i nodi.Aprire il menu di scelta rapida per la selezione.Scegliere Gruppo, Converti in foglia.

Per visualizzare i nodi del contenitore come nodi di gruppo, selezionare i nodi.Aprire il menu di scelta rapida per la selezione.Scegliere Gruppo, Converti in gruppo.

Per mostrare tutti i nodi foglia come nodi di gruppo, aprire il menu di scelta rapida del grafico.Scegliere Gruppo, Abilita raggruppamento.

Per mostrare tutti i nodi foglia come nodi di gruppo, aprire il menu di scelta rapida del grafico.Scegliere Gruppo, Disabilita raggruppamento.

Aggiungere un nodo a un gruppo

Trascinare il nodo nel gruppo.

È inoltre possibile trascinare i nodi da un gruppo.

Aggiungere un nodo a un nodo di non-gruppo

È possibile convertire qualsiasi nodo in un gruppo.Trascinare il nodo nel nodo di destinazione.

Raggruppare nodi selezionati

  1. Selezionare i nodi che si desidera raggruppare.

    Una barra degli strumenti verrà visualizzata sopra i nodi.

    Barra degli strumenti del grafico delle dipendenze

  2. Nella barra degli strumenti, scegliere Raggruppa i nodi selezionatiBarra degli strumenti del grafico - Gruppo selezionato.

    - oppure -

    Aprire il menu di scelta rapida per la selezione.Scegliere Gruppo, Aggiungi gruppo padre.

  3. Aprire il menu di scelta rapida per il nuovo gruppo.Scegliere Proprietà.Nella proprietà Etichetta rinominare il gruppo.

Raggruppare nodi con categorie o proprietà specifiche

  1. Dal menu Architettura, scegliere Windows, Esplora architettura.

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

    Vedere Trovare codice con Esplora architettura.

  3. Sul lato destro della colonna corrente fare clic sulla colonna dell'azione compressa per espanderla.(Tastiera: premere scheda per spostare lo stato attivo fino a quando la colonna azioni collassata si espanderà.)

    NotaNota
    La colonna azione viene visualizzata evidenziata quando si sposta il puntatore, o lo stato attivo, in cima a questa.
  4. Nella colonna dell'azione fare clic su Contenuto da.(Tastiera: premere scheda per spostare lo stato attivo e quindi utilizzare i tasti di direzione fino a che la relazione Contenuti da sia selezionata.)

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

  6. Aprire il menu di scelta rapida per il grafico.Scegliere Gruppo, Abilita raggruppamento.

Raggruppare nodi in base ai relativi valori delle proprietà

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

  2. Dal menu Architettura.Scegliere Windows, Esplora architettura.

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

  4. Nella colonna successiva selezionare il file salvato con estensione dgml

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

    Vedere Trovare codice con Esplora architettura.

  6. Sul lato destro della colonna corrente fare clic sulla colonna dell'azione compressa per espanderla.(Tastiera: premere scheda per spostare lo stato attivo fino a quando la colonna azioni collassata si espanderà.)

    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.(Tastiera: premere scheda per spostare lo stato attivo e quindi utilizzare i tasti di direzione fino a quando il comando gruppo dalle proprietà è selezionato.)

  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. Aprire il menu di scelta rapida per la superficie del grafico.Scegliere Gruppo, Abilita raggruppamento.

Rimuovere gruppi

Selezionare il gruppo o i gruppi che si desidera rimuovere.Aprire il menu di scelta rapida per la selezione.Scegliere Gruppo, 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.Aprire il menu di scelta rapida per la selezione.Scegliere Gruppo, Rimuovi dall'elemento padre.

Per raggruppare nodi modificando il file con estensione dgml del grafico

  1. Per convertire un nodo in un gruppo, aprire il menu di scelta rapida del nodo.Scegliere Vai, DGML.

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

    In alternativa

    Per aggiungere un nuovo gruppo di file:

    1. Aprire il menu di scelta rapida per un'area vuota del grafico.Scegliere Vai, 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.

Unire i grafici

È possibile unire grafici copiando e incollando i nodi tra i grafici.Se gli identificatori di nodo corrispondono, incollare le funzioni dei nodi come un'operazione di unione.Per semplificare questa attività più semplice, inserire tutti gli assembly o file binari che si desidera visualizzare nella stessa cartella in modo che il percorso completo di ogni assembly o binario sia lo stesso per ogni grafico da unire.

In alternativa, è possibile creare un singolo grafico per gli assembly o binari che si desidera visualizzare eseguendo uno dei passaggi seguenti:

  • Trascinare gli assembly o binari allo stesso grafico.

    In alternativa

  • Aprire Esplora architettura:In File system, scegliere Seleziona file per esplorare, quindi aprire gli assembly o binari.Per perfezionare il grafico, selezionare gli elementi specifici che si desidera visualizzare.Al termine, scegliere Crea un nuovo documento grafico dai nodi selezionati nella barra degli strumenti Esplora architettura.

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.

  1. Aprire il menu di scelta rapida dalla superficie del grafico.Scegliere Vai, DGML.

    Visual Studio apre il file .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.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, aprire il menu di scelta rapida per il grafico.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à, scegliere + nella casella LEGENDA, Categoria nodo o Proprietà nodoe la categoria o la proprietà.

    La categoria o la proprietà viene visualizzata nella casella LEGENDA.

    [!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 aprire l'elenco a discesa accanto alla categoria o alla proprietà.

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

    Per modificare

    Choose

    Colore sfondo

    Background

    Colore del contorno

    Tratto

    Colore del testo

    Foreground

    Icona

    Icone

    La casella Selezione set colori appare per selezionare un colore (o un'icona).

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

    Per applicare un

    Eseguire questi passaggi

    Set di colori (o icone)

    Aprire l'elenco Seleziona colore (o icona) imposta.Selezionare un set di colori (o icone).

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

    Colore specifico (o un'icona specifica)

    Aprire l'elenco di valore della proprietà o di categoria.Selezionare un colore (o un'icona).

    [!NOTA]

    È possibile ridisporre, eliminare o disattivare temporaneamente stili nella casella Legenda.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, aprire il menu di scelta rapida per il grafico.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à, scegliere + nella casella LEGENDA, Categoria collegamento o Proprietà collegamentoe la categoria o la proprietà.

    La categoria o la proprietà viene visualizzata nella casella LEGENDA.

    [!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, aprire l'elenco accanto alla categoria o la proprietà.

  5. Selezionare tratto per modificare il colore di contorno e la punta della freccia del collegamento.

    La casella Selezione set colori appare per selezionare un colore.

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

    Per applicare un

    Eseguire questi passaggi

    Set di colori

    Aprire l'elenco Seleziona coloreimposta.Selezionare un set di colori.

    Per ripristinare il colore predefinito, nell'elenco Seleziona set di colori, scegliere Nessuno.

    Colore specifico

    Aprire l'elenco di valore della proprietà o del tipo per selezionare un colore.

    [!NOTA]

    È possibile ridisporre, eliminare o disattivare temporaneamente stili nella casella Legenda.Vedere Modificare la casella Legenda.

Ee842619.collapse_all(it-it,VS.110).gifApplicare 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. Aprire il menu di scelta rapida del nodo di cui si desidera personalizzare lo stile.Scegliere Vai, DGML.

    Visual Studio apre 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

    Per sostituire una forma con un'icona, impostare la proprietà Shape a None e impostare la proprietà Icon al percorso del file con l'icona.

    Shape="ShapeFilePathLocation"

    Ad esempio:

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

Per applicare uno stile personalizzato a un singolo collegamento

  1. Nel grafico, spostare il puntatore del mouse sul collegamento.Viene visualizzata una descrizione comando che identifica il nodo di origine e il nodo di destinazione del collegamento.(Tastiera: premereTab fino a quando non è attivo il collegamento.)

  2. Aprire il menu di scelta rapida per il grafico.Scegliere Vai, DGML.

    Visual Studio apre il file .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 di contorno e punta della freccia

    Stroke="ColorNameOrHexadecimalValue"

    Spessore del contorno

    StrokeThickness="StrokeValue"

    Stile del contorno

    StrokeDashArray="StrokeArrayValues"

    Ad esempio:

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

Per applicare stili personalizzati a un gruppo di nodi o collegamenti

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

    SuggerimentoSuggerimento

    Se si dispone di stili ripetuti in molti nodi o collegamenti, è possibile applicare una categoria ai nodi o collegamenti e applicare poi uno stile alla categoria.Per ulteriori informazioni, vedere Assegnare categorie a nodi e collegamenti e Assegnare proprietà a nodi e collegamenti.

  2. Aprire il menu di scelta rapida per la superficie del grafico.Scegliere Vai, DGML.

    Visual Studio apre il file .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 di <Condition/>, che devono essere tutti true lo stile.

  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\Module.png" Shape="None" />
   <Category Id="Test" Icon="...\Icons\Page.png" Shape="None" />
</Categories>
<Properties>
   <Property Id="Icon" DataType="System.String" />
   <Property Id="Label" Label="Label" Description="Displayable label of an Annotatable object" DataType="System.String" />
   <Property Id="Shape" DataType="System.String" />
</Properties>
<Styles>
   <Style TargetType="Node" GroupLabel="Group" ValueLabel="Has category">
      <Condition Expression="HasCategory('Group')" />
      <Setter Property="Background" Value="#80008080" />
   </Style>
   <Style TargetType="Node">
      <Setter Property="HorizontalAlignment" Value="Center" />
   </Style>
</Styles>
</DirectedGraph>

Ee842619.collapse_all(it-it,VS.110).gifModificare la casella Legenda

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

  1. Aprire il menu di scelta rapida per uno stile nella casella LEGENDA.

  2. Effettuare una delle attività seguenti:

    Per

    Choose

    Spostare lo stile in alto

    Sposta su

    Spostare l'elemento in basso

    Sposta giù

    Eliminare l'elemento

    Eliminare

    Disattivare l'elemento

    Disabilita

    Riattivare l'elemento

    Abilita

Copiare stili da un grafico a un altro

  1. Assicurarsi che la casella LEGENDA venga visualizzata nel grafico di origine.Se non è visibile, aprire il menu di scelta rapida per un'area vuota del grafico di origine.Scegliere Mostra legenda.

  2. Aprire il menu di scelta rapida per la casella LEGENDA.Scegliere Copia legenda.

  3. Incollare la legenda sul grafico di destinazione.

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. Aprire il menu di scelta rapida del nodo.Scegliere Vai, DGML.

    Visual Studio apre 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.Viene visualizzata una descrizione comando che identifica il nodo di origine e il nodo di destinazione del collegamento.(Tastiera: Premere TAB finché lo stato attivo non sia sul collegamento.)

  2. Aprire il menu di scelta rapida per il grafico.Scegliere Vai, DGML.

    Visual Studio apre il file .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:

  • Raggruppare nodi

  • Modificare lo stile di nodi e collegamenti

  • Nascondere o mostrare nodi

Per assegnare una categoria a un nodo

  • Per assegnare una categoria predefinita, come Categoria 1, aprire il menu di scelta rapida del nodo.Scegliere Categorizza e una categoria predefinita.

- oppure -

  • Per creare e assegnare una categoria personalizzata:

    • Selezionare il 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.Premere INVIO.

    - oppure -

    1. Aprire il menu di scelta rapida del nodo.Scegliere Vai, DGML.

      Visual Studio apre 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.(Tastiera: Premere TAB finché lo stato attivo non sia sul collegamento.)

  2. Aprire il menu di scelta rapida per il grafico.Scegliere Vai, DGML.

    Visual Studio apre il file .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 o ai collegamenti

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

Nota di avvisoAttenzione

Se si utilizzano percorsi relativi, e il file con estensione .dgml viene spostato in un percorso diverso, i percorsi non saranno più risolvibili.Quando si tenta di aprire e visualizzare il contenuto collegato, si verificherà un errore che informa che il contenuto non può essere visualizzato.

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, aprire il menu di scelta rapida del nodo.Scegliere Vai, DGML.

    Visual Studio apre 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

    Eseguire questi passaggi

    Un singolo elemento

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

      NotaNota
      È possibile specificare un solo attributo Reference per ogni elemento .

    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/> o <Link/> 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.Quando si apre il menu di scelta rapida del nodo o il collegamento, verrà visualizzato un menu di scelta rapida Vai che contiene gli elementi collegati da scegliere.

  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. Per visualizzare l'elemento o gli elementi a cui si fa riferimento nel grafico, scegliere dal menu di scelta rapida del nodo o il collegamento.Scegliere Vai a e quindi l'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.

  • 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.Vedere Cercare e ridisporre grafici dipendenze.

  • Layout - Impostare il grafico su uno dei layout seguenti: None, Sugiyama (layout struttura ad albero), ForceDirected (raggruppamenti veloci) o DependencyMatrix.Vedere Cercare e ridisporre grafici dipendenze.

  • 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).Vedere Cercare e ridisporre grafici dipendenze.

  • 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.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.Vede Organizzare nodi in gruppi.

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

  • Reference - Impostare questo attributo per collegare un nodo a un documento o a un URL.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" Category="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.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.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.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à.

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

Visualizzare le dipendenze di codice nei grafici dipendenze

Cercare e ridisporre grafici dipendenze