Modificare e personalizzare grafici dipendenze
È possibile modificare i grafici di dipendenze senza influire sul codice sottostante. Questa operazione risulta utile quando si desidera concentrarsi sugli elementi principali o comunicare informazioni sul codice. Per evidenziare aree interessanti, è possibile ad esempio selezionare nodi e filtrarli, modificare lo stile di nodi e collegamenti, nascondere o eliminare nodi e organizzare nodi mediante proprietà, categorie o gruppi.
È inoltre possibile personalizzare ulteriormente un grafico modificando il file con estensione dgml (Directed Graph Markup Language) del grafico. È ad esempio possibile modificare elementi per specificare stili personalizzati, assegnare proprietà e categorie a nodi e collegamenti o collegare nodi a elementi quali documenti, URL o altri grafi.
Nota
In Visual Studio viene eseguita la rimozione 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
Visual Studio Ultimate, Visual Studio Premium o Visual Studio Professional
Per creare grafici di dipendenze, è necessario disporre di Visual Studio Ultimate. Vedere Mappare le dipendenze nel codice su grafici di dipendenze.
In questo argomento
Selezionare nodi o collegamenti
Rinominare nodi o collegamenti
Nascondere o visualizzare nodi e collegamenti
Aggiungere nodi e collegamenti
Aggiungere commenti al grafico
Eliminare nodi
Raggruppare nodi
Eseguire il merge dei grafici
Modificare lo stile del grafico
Modificare lo stile del 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 a nodi o collegamenti
Creare alias per percorsi di utilizzo comune
Selezionare nodi o 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 una delle operazioni seguenti:
|
Rinominare nodi o collegamenti
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.
Nascondere o visualizzare nodi e collegamenti
Se vengono nascosti, i nodi non possono partecipare ad 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 si selezionano nodi nel gruppo, i collegamenti tra gruppi vengono visualizzati mostrando le dipendenze nel gruppo.
Avviso
Prima di condividere un grafico creato in Visual Studio Ultimate con coloro che utilizzano Visual Studio Premium o Visual Studio Professional, assicurarsi di rendere visibili tutti i nodi o i collegamenti tra gruppi che si desidera siano visibili agli altri utenti.In caso contrario, gli utenti non saranno in grado di vedere tali elementi.
Per nascondere o mostrare nodi
Per |
Eseguire questi passaggi |
---|---|
Nascondere nodi selezionati |
|
Nascondere nodi non selezionati |
|
Mostrare i nodi nascosti |
|
Nascondere i nodi modificando il file con estensione dgml |
|
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 In questo modo i collegamenti aggregati tra gruppi vengono nascosti. |
Mostrare 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 per disattivare questa modalità. |
Aggiungere nodi e collegamenti
Per aggiungere un nuovo nodo non definito |
Eseguire questi passaggi |
---|---|
Nella posizione corrente del puntatore |
Selezionare una posizione nel grafico dove inserire il nuovo nodo. Premere Inserisci. |
Collegato al nodo selezionato |
|
Collegato a un nodo esistente con lo stato attivo |
Premere TAB fino al nodo cui si desidera collegare lo stato attivo. Premere ALT+MAIUSC+INS. |
Per aggiungere nodi per |
Eseguire questi passaggi |
---|---|
Elementi nella soluzione |
|
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:
Per una classe, scegliere:
Per un metodo, scegliere:
Per un campo, scegliere:
|
Assembly .NET compilati (file con estensione 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
Selezionare il nodo di origine.
Una barra degli strumenti verrà visualizzata sopra il nodo.
Sulla barra degli strumenti scegliere Crea un collegamento da questo nodo a qualsiasi nodo su cui si farà clic successivamente . Selezionare il nodo di destinazione.
Viene visualizzato un collegamento tra i due nodi.
Aggiungere commenti al grafico
Selezionare il nodo in cui si desidera aggiungere un commento collegato.
Una barra degli strumenti verrà visualizzata sopra il nodo.
Sulla barra degli strumenti scegliere Crea un nuovo nodo di commento con un nuovo collegamento al nodo selezionato .
Digitare i commenti. Per inserire una nuova riga, premere MAIUSC+INVIO.
Eliminare nodi
È possibile eliminare i nodi da un grafico senza influire sul codice sottostante. Per eliminare un nodo, selezionarlo, quindi premere CANC. Quando si eliminano i nodi, le relative definizioni vengono rimosse dal file con estensione dgml.
Quando si eliminano i nodi da un gruppo, il pulsante Recupera di nuovo figli verrà visualizzato nel gruppo. Per recuperare i nodi mancanti, scegliere Recupera di nuovo figli . I grafici creati modificando il file con estensione dgml, aggiungendo i nodi non definiti o utilizzando versioni precedenti di Visual Studio Ultimate, non supportano questa funzionalità.
Avviso
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 rendere visibili agli altri utenti siano mostrati nel grafico.In caso contrario, gli utenti non saranno in grado di recuperare i nodi eliminati.
Raggruppare nodi
Per |
Eseguire questi passaggi |
---|---|
Mostrare nodi contenitore come nodi gruppo o nodi foglia. |
Per mostrare 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 di gruppo come nodi foglia, 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 non di gruppo |
È possibile convertire qualsiasi nodo in un gruppo. Trascinare il nodo nel nodo di destinazione. |
Raggruppare nodi selezionati |
|
Raggruppare nodi con categorie o proprietà specifiche |
|
Raggruppare nodi in base ai relativi valori delle proprietà |
|
Rimuovere gruppi |
Selezionare il gruppo o i gruppi da 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 da 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
Per convertire un nodo in un gruppo, aprire il menu di scelta rapida del nodo. Scegliere Vai, DGML.
In Visual Studio viene aperto il file con estensione dgml del grafico e viene evidenziato l'elemento <Node/> relativo a tale nodo.
- oppure -
Per aggiungere un nuovo gruppo
Aprire il menu di scelta rapida per un'area vuota del grafico. Scegliere Vai, DGML.
Nella sezione <Node/> aggiungere un nuovo elemento <Nodes>.
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>
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.
Eseguire il merge dei grafici
È possibile eseguire il merge dei grafici copiando e incollando i nodi tra i grafici. Se gli identificatori di nodo corrispondono, incollare le funzioni dei nodi come un'operazione di merge. Per semplificare questa attività, inserire tutti gli assembly o tutti i file binari da visualizzare nella stessa cartella in modo che il percorso completo di ogni assembly o file binario sia lo stesso per ogni grafico da sottoporre a merge.
In alternativa, è possibile creare un singolo grafico per gli assembly o i file binari da visualizzare eseguendo uno dei passaggi seguenti:
Trascinare gli assembly o i file binari sullo stesso grafico.
- oppure -
Aprire Esplora architettura. In File system scegliere Seleziona file per ricercare, selezionare e aprire gli assembly o i file binari. Per perfezionare il grafico, selezionare gli elementi specifici da visualizzare. Al termine, scegliere Crea un nuovo documento grafico da tutti i nodi selezionati sulla 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.
Aprire il menu di scelta rapida dalla superficie del grafico. Scegliere Vai, DGML.
In Visual Studio viene aperto il file con estensione dgml del grafico.
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"
Di seguito è riportato un 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à
Se la casella Legenda non è visibile, aprire il menu di scelta rapida per il grafico. Scegliere Mostra legenda.
Nella casella Legenda verificare se la categoria o la proprietà del nodo è visualizzata nell'elenco.
Se l'elenco non include la categoria o la proprietà, scegliere + nella casella Legenda, Categoria nodo o Proprietà nodo, quindi 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.
Nella casella Legenda aprire l'elenco a discesa accanto alla categoria o alla proprietà.
Utilizzare la tabella seguente per selezionare lo stile che si desidera modificare:
Per modificare
Choose
Colore sfondo
Sfondo
Colore del contorno
Tratto
Colore del testo
Primo piano
Icona
Icone
La casella Selezione set colori viene visualizzata per selezionare un colore (o un'icona).
Nella finestra di dialogo Selezione set colori effettuare una delle operazioni seguenti:
Per applicare un
Eseguire questi passaggi
Set di colori (o di icone)
Aprire l'elenco Seleziona set di colori o Seleziona set di icone. Selezionare un set di colori (o di icone).
Per ripristinare il colore predefinito (o l'icona predefinita), nell'elenco Seleziona set di colori o Seleziona set di icone scegliere Nessuno.
Colore specifico (o un'icona specifica)
Aprire l'elenco di valori della proprietà o della 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à
Se la casella Legenda non è visibile, aprire il menu di scelta rapida per il grafico. Scegliere Mostra legenda.
Nella casella Legenda verificare se la categoria o la proprietà è visualizzata nell'elenco.
Se l'elenco non include la categoria o la proprietà, scegliere + nella casella Legenda, Categoria collegamento o Proprietà collegamento, quindi 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.
Nella casella Legenda aprire l'elenco accanto alla categoria o alla proprietà.
Selezionare Tratto per modificare il colore di contorno e la punta della freccia del collegamento.
La casella Selezione set colori viene visualizzata per selezionare un colore.
Nella casella Selezione set colori effettuare una delle operazioni seguenti:
Per applicare un
Eseguire questi passaggi
Set di colori
Aprire l'elenco Seleziona set di colori. Selezionare un set di colori.
Per ripristinare il colore predefinito, nell'elenco Seleziona set di colori scegliere Nessuno.
Colore specifico
Aprire l'elenco di valori 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.
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
Aprire il menu di scelta rapida del nodo di cui si desidera personalizzare lo stile. Scegliere Vai, DGML.
In Visual Studio viene aperto il file con estensione dgml del grafico e viene evidenziato l'elemento <Node/> relativo a tale nodo.
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 su None e la proprietà Icon sul percorso con il file dell'icona.
Shape="ShapeFilePathLocation"
Di seguito è riportato un 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
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 fino a quando lo stato attivo non si sposta sul collegamento.)
Aprire il menu di scelta rapida per il grafico. Scegliere Vai, DGML.
In Visual Studio viene aperto il file con estensione dgml del grafico.
Trovare l'elemento <Link/> che contiene i nomi del nodo di origine e del nodo di destinazione.
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
Assegnare qualsiasi categoria o proprietà desiderata ai nodi o ai collegamenti.
Suggerimento
Se sono presenti stili ripetuti in molti nodi o collegamenti, è possibile applicare una categoria ai nodi oppure ai 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.
Aprire il menu di scelta rapida per la superficie del grafico. Scegliere Vai, DGML.
In Visual Studio viene aperto il file con estensione dgml del grafico.
Se non è presente un elemento <Styles></Styles>, aggiungerne uno sotto l'elemento <DirectedGraph></DirectedGraph> dopo l'elemento <Links></Links>.
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
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.
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:
Modificare la casella Legenda
È possibile ridisporre, eliminare o disattivare temporaneamente stili nella casella Legenda:
Aprire il menu di scelta rapida per uno stile nella casella Legenda.
Effettuare una delle attività seguenti:
Per
Choose
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
Verificare 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.
Aprire il menu di scelta rapida per la casella Legenda. Scegliere Copia legenda.
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
Aprire il menu di scelta rapida del nodo. Scegliere Vai, DGML.
In Visual Studio viene aperto il file con estensione dgml del grafico e viene evidenziato l'elemento <Node/> relativo a tale nodo.
Nell'elemento <Node/> specificare il nome della proprietà e il relativo valore. Ad esempio:
<Nodes> <Node Id="MyNode" MyPropertyName="PropertyValue" /> </Nodes>
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
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 si sposta sul collegamento.)
Aprire il menu di scelta rapida per il grafico. Scegliere Vai, DGML.
In Visual Studio viene aperto il file con estensione dgml del grafico.
Trovare l'elemento <Link/> che contiene i nomi del nodo di origine e del nodo di destinazione.
Nell'elemento <Node/> specificare il nome della proprietà e il relativo valore. Ad esempio:
<Links> <Link Source="MyFirstNode" Target="MySecondNode" MyPropertyName="PropertyValue" /> </Links>
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:
- Scegliere 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
Aprire il menu di scelta rapida del nodo. Scegliere Vai, DGML.
In Visual Studio viene aperto il file con estensione dgml del grafico e viene evidenziato l'elemento <Node/> relativo a tale nodo.
Nell'elemento <Node/> aggiungere un attributo Category per specificare il nome della categoria. Ad esempio:
<Nodes> <Node Id="MyNode" Category="MyCategory" /> </Nodes>
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
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 si sposta sul collegamento.)
Aprire il menu di scelta rapida per il grafico. Scegliere Vai, DGML.
In Visual Studio viene aperto il file con estensione dgml del grafico.
Trovare l'elemento <Link/> che contiene i nomi del nodo di origine e del nodo di destinazione.
Nell'elemento <Link/> aggiungere un attributo Category per specificare il nome della categoria. Ad esempio:
<Links> <Link Source="MyFirstNode" Target="MySecondNode" Category="MyCategory" </Links>
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 a nodi o collegamenti
È possibile collegare elementi, quali documenti o URL, a un nodo oppure a un collegamento modificando il file con estensione dgml del grafico e aggiungendo un attributo Reference all'elemento <Node/> per un nodo oppure all'elemento <Link/> per un collegamento. È quindi possibile aprire e visualizzare il contenuto dal nodo o dal collegamento. L'attributo Reference specifica il percorso di tale contenuto. Il percorso può essere assoluto oppure relativo alla posizione del file con estensione dgml.
Avviso
Se si utilizzano percorsi relativi e se 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 oppure a un bug di Team Foundation Server o ad altre informazioni correlate al nodo.
Per collegare un elemento a un nodo
Nel grafico aprire il menu di scelta rapida del nodo. Scegliere Vai, DGML.
In Visual Studio viene aperto il file con estensione dgml del grafico e viene evidenziato l'elemento <Node/> relativo a tale nodo.
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.
Nota
È possibile specificare un solo attributo Reference per elemento.
Di seguito è riportato un esempio.
<Nodes> <Node Id="MyNode" Reference="MyDocument.txt" /> </Nodes> <Properties> <Property Id="Reference" Label="My Document" DataType="System.String" IsReference="True" /> </Properties>
Più elementi
Nell'elemento <Node/> o <Link/> aggiungere un nuovo attributo per specificare la posizione di ogni riferimento.
Nella sezione <Properties>:
Aggiungere un elemento <Property/> per ogni nuovo tipo di riferimento.
Impostare l'attributo Id sul nome dell'attributo del nuovo riferimento.
Aggiungere l'attributo IsReference e impostarlo su True affinché il riferimento venga visualizzato nel menu di scelta rapida Vai dell'elemento.
Utilizzare l'attributo Label per specificare il testo visualizzato nel menu di scelta rapida Vai dell'elemento.
Di seguito è riportato un 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>
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>
Per visualizzare l'elemento o gli elementi a cui si fa riferimento nel grafico, aprire il menu di scelta rapida del nodo o del collegamento. Scegliere Vai, quindi scegliere 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.
<?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/>.
Nota
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. Vedere 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>.
Nota
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