Partilhar via


Editar e personalizar gráficos de dependência

É possível editar gráficos de dependência sem afetar o código subjacente. Isso é útil quando você deseja enfocar itens-chave ou informar ideias sobre o código. Por exemplo, para realçar áreas interessantes, é possível selecionar nós e filtrá-los, alterar o estilo de nós e links, ocultar ou excluir nós e organizar nós usando-se propriedades, categorias ou grupos.

É possível personalizar ainda mais um gráfico editando-se o arquivo Directed Graph Markup Language (.dgml) do gráfico. Por exemplo, é possível editar elementos para especificar estilos personalizados, atribuir propriedades e categorias a nós e links ou vincular nós a itens como, por exemplo, documentos, URLs ou outros gráficos.

Dica

O Visual Studio limpa todos os elementos DGML não usados e os atributos excluindo-os o quando você salva o arquivo .dgml.Ele também cria elementos de nó automaticamente quando você adiciona novos links manualmente.Quando você salva o arquivo .dgml, todos os atributos adicionados a um elemento podem se reorganizar em ordem alfabética.Para obter mais informações sobre elementos DGML, consulte Noções básicas sobre DGML (Directed Graph Markup Language).

Requisitos

Neste tópico

  • Selecionar nós ou links

  • Renomear nós ou links

  • Ocultar ou mostrar nós e links

  • Adicionar nós e links

  • Adicionar comentários ao gráfico

  • Excluir nós

  • Agrupar nós

  • Mesclar gráficos

  • Alterar o estilo do gráfico

  • Alterar o nó ou o estilo do link

  • Copiar estilos de um gráfico para outro gráfico

  • Atribuir propriedades a nós e links

  • Atribuir categorias a nós e links

  • Vincular itens a nós ou links

  • Criar aliases para os caminhos mais usados

Para

Realizar estas etapas

Selecionar todos os nós não selecionados

Abra o menu de atalho para os nós selecionados. Escolha Selecionar, Inverter Seleção.

Selecione nós adicionais vinculados aos selecionados

Abra o menu de atalho para os nós selecionados. Escolha Selecionar e um dos seguintes:

  • Para selecionar nós adicionais vinculados diretamente ao nó selecionado, escolha Dependências de Entrada.

  • Para selecionar nós adicionais vinculados diretamente do nó selecionado, escolha Dependências de Saída.

  • Para selecionar nós adicionais vinculados diretamente ao e do nó selecionado, escolha Ambos.

  • Para selecionar todos os nós vinculados ao e do nó selecionado, escolha Subgráfico Conectado.

  • Para selecionar todos os filhos do nó selecionado, escolha Filhos.

  • Selecione o nó ou o link. Pressione F2. Quando a caixa de edição for exibida, renomeie o nó ou o link.

    Se o rótulo estiver visível, selecione-o.

Ocultar nós os impede de participar de algoritmos de layout. Por padrão, links de grupo cruzado permanecem ocultos. Links de grupo cruzado são links individuais que conectam nós entre os grupos. Quando os grupos são recolhidos, o gráfico agrega todos os links de grupo cruzado em links únicos entre grupos. Quando você expande um grupo e seleciona nós dentro do grupo, os links de grupo cruzado são exibidos e mostram as dependências nesse grupo.

Aviso

Antes de compartilhar um gráfico criado no Visual Studio Ultimate com as pessoas que usam o Visual Studio Premium ou o Visual Studio Professional, não se esqueça de reexibir todos os nós ou links de grupo cruzado que você deseja que as outras pessoas vejam.Do contrário, os usuários não poderão reexibir esses itens.

Para ocultar ou mostrar nós

Para

Realizar estas etapas

Ocultar nós selecionados

  1. Selecione os nós que você deseja ocultar.

  2. Abra o menu de atalho para os nós selecionados ou para o gráfico. Escolha Selecionar, Ocultar Selecionado.

Ocultar nós não selecionados

  1. Selecione nós que você deseja que permaneçam visíveis.

  2. Abra o menu de atalho para os nós selecionados ou para o gráfico. Escolha Selecionar, Ocultar Não Selecionado.

Mostrar nós ocultos

  • Para mostrar todos os nós ocultos dentro de um grupo, verifique se o grupo está expandido primeiro. Escolha Reexibir Filhos Mostrar ícone de filhos no canto superior esquerdo do grupo.

  • Para mostrar todos os nós ocultos, abra o menu de atalho do gráfico. Escolha Seleção, Reexibir Tudo.

Ocultar nós editando-se o arquivo .dgml

  1. Abra o menu de atalho do gráfico. Escolha Ir para, DGML.

    O Visual Studio abre o arquivo .dgml do gráfico.

  2. No elemento <Node/>, adicione o seguinte atributo para ocultar o nó:

    Visibility="Hidden"

    Por exemplo:

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

Para mostrar ou ocultar links

Para

Na barra de ferramentas do gráfico, abra a lista Alterar o modo como os links são renderizados no gráfico ou abra o menu de atalho do gráfico. Escolha:

Mostrar links de grupo cruzado sempre

Mostrar Todos os Links de Grupo Cruzado

Isso oculta links agregados entre grupos.

Mostrar apenas links de grupo cruzado para nós selecionados

Mostrar Links de Grupo Cruzado em Nós Selecionados

Ocultar links de grupo cruzado sempre

Ocultar Links de Grupo Cruzado

Ocultar todos os links (ou mostrar todos os links)

Ocultar Todos os Links

Para mostrar todos os links, escolha Ocultar Todos os Links novamente para desativar esse modo.

Para adicionar um novo nó indefinido

Realizar estas etapas

No local do ponteiro atual

Selecione um local no gráfico onde colocar o novo nó. Pressione Inserir.

Isso vincula ao nó selecionado

  1. Selecione o nó de origem.

    Uma barra de ferramentas começa a ser exibida acima do nó.

    Barra de ferramentas de gráfico de dependência

  2. Na barra de ferramentas, escolha Criar um nó com a mesma categoria deste nó e adicionar um novo link a ele Barra de ferramentas de gráfico — criar nó com link.

  3. Escolha um local no gráfico para colocar o novo nó.

    (Teclado: pressione Tab até que o nó a partir do qual você deseja criar um vínculo tenha foco e pressione Alt+Insert.)

Isso cria um vínculo com um nó existente com o foco atual

Pressione Tab até o nó com o qual você deseja criar o vínculo receba o foco. Pressione Alt+ +ShiftInsert.

Para adicionar nós de

Realizar estas etapas

Itens na solução

  1. Encontre o item no Gerenciador de Soluções. Use a caixa de pesquisa do Gerenciador de Soluções ou procure a solução. Para procurar o código no Gerenciador de Soluções, consulte Exibindo a estrutura do código.

    Dica

    Para encontrar itens que tenham dependências de um tipo ou de um membro, abra o menu de atalho do tipo ou do membro no Gerenciador de Soluções.Escolha a relação que lhe interessa.

    O Gerenciador de Soluções mostra apenas os itens com as dependências especificadas.

  2. Arraste os itens que lhe interessam para a superfície do gráfico.

    Para incluir a hierarquia do contêiner pai dos itens selecionados durante o uso do Visual Studio Ultimate, mantenha pressionada a tecla CTRL enquanto você arrasta itens para o gráfico.

    - ou -

    No Gerenciador de Soluções, abra a lista Criar um novo documento de gráfico…. Escolha Adicionar ao Gráfico de Dependência Ativo. Para adicionar a hierarquia do contêiner pai, escolha Adicionar ao Gráfico de Dependência Ativo com Hierarquia de Confinamento em seu lugar.

    O Visual Studio adiciona nós para os itens de código de nível superior na seleção. Para ver se um nó contém itens, mova o ponteiro do mouse sobre o nó de forma que a divisa (^) seja exibida. Escolha a divisa (^) para expandir o nó. Para expandir todos os nós, abra o menu de atalho do gráfico. Escolha Grupo, Expandir Tudo.

    Dica

    Este comando não permanece disponível quando a expansão de todos os grupos produz um gráfico inutilizável ou problemas de memória.

Itens relacionados a nós no gráfico

Abra o menu de atalho do nó. Escolha Mostrar e o tipo de relação que lhe interessa.

Para obter um assembly, escolha:

  • Assemblies Referenciados: adicionar assemblies a que esse assembly faz referência. Os assemblies externos são exibidos no grupo Externos.

  • Fazendo Referência a Assemblies: adicione assemblies na solução que fazem referência a esse assembly.

Para obter uma classe, escolha:

  • Tipos de Base: para obter uma classe, adicione a classe de base e as interfaces implementadas.

    Para obter uma interface, adicione as interfaces de base.

  • Tipos Derivados: para obter uma classe, adicione as classes derivadas.

    Para obter uma interface, adicione as interfaces derivadas e as classes de implementação ou structs.

  • Todos os Tipos de Base: adicione a classe de base ou a hierarquia da interface recursivamente.

  • Todos os Tipos Derivados: para obter uma classe, adicione todas as classes derivadas recursivamente.

    Para obter uma interface, adicione todas as interfaces derivadas e as classes de implementação ou structs recursivamente.

  • Hierarquia de Confinamento: adicione a hierarquia do contêiner pai.

  • Tipos Usados: adicione todas as classes e seus membros que essa classe usa.

  • Tipos Cousados: adicione todas as classes e seus membros que usam essa classe.

Para obter um método, escolha:

  • Hierarquia de Confinamento: adicione a hierarquia do contêiner pai.

  • Métodos Chamados: adicione métodos que esse método chama.

  • Métodos Cochamados: adicione métodos que chamam esse método.

  • Métodos Substituídos em Tipos de Base: para obter um método que substitui outros métodos ou implementa o método de uma interface, adicione todos os métodos abstratos ou virtuais em classes de base que são substituídos e, se houver, o método da interface implementado.

  • Campos Referenciados: adicione campos a que esse método faz referência.

Para um campo, escolha:

  • Hierarquia de Confinamento: adicione a hierarquia do contêiner pai.

  • Fazendo Referência a Métodos: adicione métodos que façam referência a esse campo.

Assemblies compilados do .NET (.dll ou .exe) ou binários

Use Architecture Explorer para localizar e arrastar itens e relações para o gráfico.

  1. Selecione o nó de origem.

    Uma barra de ferramentas começa a ser exibida acima do nó.

    Barra de ferramentas de gráfico de dependência

  2. Na barra de ferramentas, escolha Criar novo link com base no nó para o nó em que você clica em seguida Barra de ferramentas de gráfico — criar link. Selecione o nó de destino.

    Um link é exibido entre os dois nós.

Adicionar comentários ao gráfico

  1. Selecione o nó onde você deseja adicionar um comentário vinculado.

    Uma barra de ferramentas começa a ser exibida acima do nó.

    Barra de ferramentas de gráfico de dependência

  2. Na barra de ferramentas, escolha Criar um novo nó de comentário com um novo link para o nó selecionado Barra de ferramentas de gráfico — criar comentários com link.

  3. Digite os comentários. Para digitar uma nova linha, pressione SHIFT+Enter.

Excluir nós

É possível excluir nós de um gráfico sem afetar o código subjacente. Para excluir um nó, selecione o nó e, em seguida, pressione a tecla Delete. Quando você excluir nós, as definições serão removidas do arquivo DGML (.dgml).

Quando você excluir nós de um grupo, o botão Buscar Filhos Novamente Buscar filhos ícone será exibido dentro do grupo. Para recuperar nós ausentes, escolha Buscar Filhos Novamente Buscar filhos ícone. Os gráficos criados editando-se o DGML, adicionando-se nós indefinidos ou usando-se versões anteriores do Visual Studio Ultimate não dão suporte a esse recurso.

Aviso

Antes de compartilhar um gráfico criado usando-se o Visual Studio Ultimate com as pessoas que usam o Visual Studio Premium ou o Visual Studio Professional, verifique se todos os nós que você deseja que as outras pessoas vejam permanecem visíveis no gráfico.Do contrário, esses usuários não poderão recuperar os nós excluídos.

Agrupar nós

Para

Realizar estas etapas

Mostrar nós do contêiner como nós de grupo ou de folha

Para mostrar nós de contêiner como nós de folha, selecione os nós. Abra o menu de atalho da seleção. Escolha Grupo, Converter em Folha.

Para mostrar nós de contêiner como nós de grupo, selecione os nós. Abra o menu de atalho da seleção. Escolha Grupo, Converter em Grupo.

Para mostrar todos os nós de folha como nós de grupo, abra o menu de atalho do gráfico. Escolha Grupo, Ativar Agrupamento.

Para mostrar todos os nós de grupo como nós de folha, abra o menu de atalho do gráfico. Escolha Grupo, Desativar Agrupamento.

Adicionar um nó a um grupo

Arraste o nó para o grupo.

Também é possível arrastar nós para fora de um grupo.

Adicionar um nó a um grupo que não seja de nós

É possível converter qualquer nó em um grupo. Arraste o nó para o nó de destino.

Agrupar nós selecionados

  1. Selecione os nós que você deseja agrupar.

    Uma barra de ferramentas começa a ser exibida acima dos nós.

    Barra de ferramentas de gráfico de dependência

  2. Na barra de ferramentas, escolha Agrupar os nós selecionados Barra de ferramentas de gráfico - grupo selecionado.

    - ou -

    Abra o menu de atalho da seleção. Escolha Grupo, Adicionar Grupo Pai.

  3. Abra o menu de atalho do novo grupo. Escolha Propriedades. Na propriedade Rótulo, renomeie o grupo.

Agrupar nós que tenham categorias ou propriedades específicas

  1. No menu Arquitetura, escolha Janelas, Architecture Explorer.

  2. Use Architecture Explorer para localizar e selecionar todos os nós que você deseja agrupar.

    Consulte Localizar código com o Architecture Explorer.

  3. No lado direito da coluna atual, escolha a coluna recolhida da ação para expandi-la. (Teclado: pressione Tab para move o foco até a coluna recolhida de ação expandir.)

    Dica

    A coluna de ação é realçada quando você move o ponteiro, ou o foco, sobre ele.

  4. Na coluna de ação, clique em Contido Por. (Teclado: pressione Tab para mover o foco e use as teclas de direção até que a relação Contido Por esteja selecionada.)

  5. Da próxima coluna, arraste os grupos de contêiner para o gráfico.

  6. Abra o menu de atalho do gráfico. Escolha Grupo, Ativar Agrupamento.

Agrupar nós de acordo com os valores de propriedade

  1. Salve os gráficos como um arquivo .dgml em disco.

  2. No menu Arquitetura. Escolha Janelas, Architecture Explorer.

  3. No Architecture Explorer, em Sistema de Arquivos, escolha Selecionar Arquivos.

  4. Na próxima coluna, selecione o arquivo .dgml salvo

  5. Use Architecture Explorer para localizar e selecionar todos os nós que você deseja agrupar.

    Consulte Localizar código com o Architecture Explorer.

  6. No lado direito da coluna atual, escolha a coluna recolhida da ação para expandi-la. (Teclado: pressione Tab para move o foco até a coluna recolhida de ação expandir.)

    Dica

    A coluna de ação é realçada quando você move o ponteiro sobre ele.

  7. Na coluna de ação, em Agrupamento, escolha Agrupar por Propriedades. (Teclado: pressione Tab para mover o foco e use as teclas de direção até que o comando Agrupar por Propriedades esteja selecionado.)

  8. Na próxima coluna, selecione as propriedades que você deseja usar como grupos.

    A próxima coluna é exibida e mostra os valores da propriedade disponíveis.

  9. Da próxima coluna, arraste os grupos de valores da propriedade para o gráfico.

  10. Abra o menu de atalho da superfície do gráfico. Escolha Grupo, Ativar Agrupamento.

Remover grupos

Selecione o grupo ou os grupos que você deseja remover. Abra o menu de atalho da seleção. Escolha Grupo, Remover Grupo.

Remova nós do grupo pai até seu avô, ou fora de um grupo, se eles não tiverem nenhum grupo avô

Selecione os nós que você deseja mover. Abra o menu de atalho da seleção. Escolha Grupo, Remover do Pai.

Para agrupar nós editando-se o arquivo .dgml do gráfico

  1. Para converter um nó em um grupo, abra o menu de atalho do nó. Escolha Ir para, DGML.

    O Visual Studio abre o arquivo .dgml do gráfico e realça o elemento <Node/> desse nó.

    -ou-

    Para adicionar um novo grupo:

    1. Abrir o menu de atalho de uma área em branco do gráfico. Escolha Ir para, DGML.

    2. Na seção <Nodes>, adicione um novo elemento <Node/>.

  2. No elemento <Node/>, adicione um atributo Group para especificar se o grupo aparece expandido ou recolhido. Por exemplo:

    <Nodes>
       <Node Id="MyFirstGroup" Group="Expanded" />
       <Node Id="MySecondGroup" Group="Collapsed" />
    </Nodes>
    
  3. Na seção <Links>, verifique se há um elemento <Link/> com os seguintes atributos para cada relação entre um nó do grupo e seus nós filho:

    • Um atributo Source que especifica o nó do grupo

    • Um atributo Target que especifica o nó filho

    • Um atributo Category que especifica uma relação Contains entre o nó do grupo e seu nó filho

    Por exemplo:

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

    Para obter mais informações sobre o atributo Category, consulte Atribuir Categorias a Nós e Links.

Mesclar gráficos

É possível mesclar gráficos copiando e colando-se nós entre gráficos. Se os identificadores do nó forem correspondentes, a colagem dos nós funcionará como uma operação de mesclagem. Para facilitar essa tarefa, coloque todos os assemblies ou binários que você deseja visualizar na mesma pasta de forma que o caminho completo de cada assembly ou binário seja o mesmo de cada gráfico que você deseja mesclar.

Também é possível criar um único gráfico para os assemblies ou binários que você deseja visualizar seguindo-se uma destas etapas:

  • Arraste os assemblies ou os binários no mesmo gráfico.

    -ou-

  • Abra o Architecture Explorer. Em Sistema de Arquivos, escolha Selecionar Arquivos para procurar, selecionar e abrir os assemblies ou os binários. Para refinar o gráfico, selecione os itens que você deseja visualizar. Quando terminar, escolha Criar um novo documento gráfico com base em todos os nós selecionados na barra de ferramentas do Architecture Explorer.

Alterar o estilo do gráfico

É possível alterar a cor do plano de fundo e a cor da borda do gráfico editando-se o arquivo .dgml do gráfico. Para alterar o estilo dos nós e dos links, consulte Alterar o Estilo de Nós e Links.

  1. Abra o menu de atalho com base na superfície do gráfico. Escolha Ir para, DGML.

    O Visual Studio abre o arquivo .dgml do gráfico.

  2. No elemento <DirectedGraph>, adicione todos os seguintes atributos para alterar o estilo:

    Para alterar a

    Adicionar o seguinte atributo

    Cor do plano de fundo

    Background="ColorNameOrHexadecimalValue"

    Cor da borda

    Stroke="StrokeValue"

    Por exemplo:

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

É possível alterar os ícones em nós e as cores de nós e links. É possível usar cores e ícones predefinidos ou especificar personalizados editando-se o arquivo .dgml do gráfico. Consulte Aplicar Estilos Personalizados a Nós e Links.

Por exemplo, é possível escolher uma cor para realçar nós e links que tenham uma determinada categoria ou propriedade. Isso permite identificar e enfocar áreas específicas do gráfico.

Para aplicar uma cor ou um ícone predefinido a nós com uma determinada categoria ou propriedade

  1. Se a caixa Legenda não estiver visível, abra o menu de atalho do gráfico. Escolha Mostrar Legenda.

  2. Na caixa Legenda, consulte se a categoria ou a propriedade do nó é exibida na lista.

  3. Se a lista não incluir a categoria ou a propriedade, escolha + na caixa Legenda, Categoria do Nó ou Propriedade do Nó e a categoria ou a propriedade.

    A categoria ou a propriedade agora é exibida na caixa Legenda.

    Dica

    Para criar e atribuir uma categoria a um nó, consulte Atribuir Categorias a Nós e Links.Para criar e atribuir uma propriedade a um nó, consulte Atribuir Propriedades a Nós e Links.

  4. Na caixa Legenda, abra a lista suspensa próxima da categoria ou da propriedade.

  5. Use a tabela a seguir para selecionar o estilo que você deseja alterar:

    Para alterar a

    Escolha

    Cor do plano de fundo

    Background

    Cor do contorno

    Traço

    Cor do texto

    Primeiro plano

    Ícone

    Ícones

    A caixa Seletor do Conjunto de Cores é exibida para você selecionar uma cor (ou um ícone).

  6. Na caixa de diálogo Seletor do Conjunto de Cores, execute um dos seguintes procedimentos:

    Para aplicar um

    Realizar estas etapas

    Conjunto de cores (ou ícones

    Abra a lista Selecionar cor (ou ícone) set. Selecione um conjunto de cores (ou ícones).

    Para restaurar a cor padrão (ou o ícone), na lista Selecionar cor (ícone) conjunto, escolha Nenhum.

    Cor específica (ou ícone)

    Abra a categoria ou a lista de valores da propriedade. Selecione uma cor (ou ícone).

    Dica

    É possível reorganizar, excluir ou inativar temporariamente estilos na caixa Legenda.Consulte Modificar Caixa de Legenda.

  1. Se a caixa Legenda não estiver visível, abra o menu de atalho do gráfico. Escolha Mostrar Legenda.

  2. Na caixa Legenda, consulte se a categoria ou a propriedade é exibida na lista.

  3. Se a lista não incluir a categoria ou a propriedade, escolha + na caixa Legenda, Categoria do Link ou Propriedade do Link e a categoria ou a propriedade.

    A categoria ou a propriedade agora é exibida na caixa Legenda.

    Dica

    Para criar e atribuir uma categoria a um link, consulte Atribuir Categorias a Nós e Links.Para criar e atribuir uma propriedade a um link, consulte Atribuir Propriedades a Nós e Links.

  4. Na caixa Legenda, abra a lista próxima da categoria ou da propriedade.

  5. Selecione Traço para alterar o contorno do link e a cor da seta.

    A caixa Seletor do Conjunto de Cores é exibida para você selecionar uma cor.

  6. Na caixa Seletor do Conjunto de Cores, execute um dos seguintes procedimentos:

    Para aplicar um

    Realizar estas etapas

    Conjunto de cores

    Abra a lista Selecionar cor conjunto. Selecione um conjunto de cores.

    Para restaurar a cor padrão, na lista Selecionar conjunto de cores, escolha Nenhum.

    Cor específica

    Abra o tipo ou a lista de valores da propriedade para selecionar uma cor.

    Dica

    É possível reorganizar, excluir ou inativar temporariamente estilos na caixa Legenda.Consulte Modificar Caixa de Legenda.

É possível aplicar estilos personalizados aos seguintes itens:

  • Nós e links únicos

  • Grupos de nós e links

  • Grupos de nós e de links com base em determinadas condições

Para aplicar um estilo personalizado a um único nó

  1. Abra o menu de atalho do nó cujo estilo você deseja personalizar. Escolha Ir para, DGML.

    O Visual Studio abre o arquivo .dgml do gráfico e realça o elemento <Node/> desse nó.

  2. No elemento <Node/>, adicione todos os seguintes atributos para personalizar o estilo:

    Para alterar a

    Adicionar o seguinte atributo

    Cor do plano de fundo

    Background="ColorNameOrHexadecimalValue"

    Contorno

    Stroke="ColorNameOrHexadecimalValue"

    Espessura do contorno

    StrokeThickness="StrokeValue"

    Cor do texto

    Foreground="ColorNameOrHexadecimalValue"

    Ícone

    Icon="IconFilePathLocation"

    Tamanho do texto

    FontSize="FontSizeValue"

    Tipo de texto

    FontFamily="FontFamilyName"

    Peso do texto

    FontWeight="FontWeightValue"

    Estilo de texto

    FontStyle="FontStyleName"

    Por exemplo, é possível especificar Italic como o estilo do texto.

    Textura

    Style="Glass"

    - ou -

    Style="Plain"

    Forma

    Para substituir a forma por um ícone, defina a propriedade Shape como None e defina a propriedade Icon como o caminho com o arquivo do ícone.

    Shape="ShapeFilePathLocation"

    Por exemplo:

    <Nodes>
       <Node Id="MyNode" Background="#FF008000" Stroke="#FF000000"
       Foreground="#FFFFFFFF" Icon="...\Icons\Globe.png"/>
    </Nodes>
    
  1. No gráfico, mova o ponteiro sobre o link. Uma dica de ferramenta é exibida e identifica o nó de origem e o nó de destino do link. (Teclado: pressione Tabulação até que o foco esteja no link.)

  2. Abra o menu de atalho do gráfico. Escolha Ir para, DGML.

    O Visual Studio abre o arquivo .dgml do gráfico.

  3. Localize o elemento <Link/> que contém os nomes dos nós de origem e de destino.

  4. No elemento <Link/>, adicione todos os seguintes atributos para personalizar o estilo:

    Para alterar a

    Adicionar o seguinte atributo

    Contorno e cor da seta

    Stroke="ColorNameOrHexadecimalValue"

    Espessura do contorno

    StrokeThickness="StrokeValue"

    Estilo do contorno

    StrokeDashArray="StrokeArrayValues"

    Por exemplo:

    <Links>
       <Link Source="MyFirstNode" Target="MySecondNode" Background="Green" Stroke="#FF000000" StrokeDashArray="2,2"/>
    </Links>
    
  1. Atribua todas as categorias ou propriedades desejadas a nós ou links.

    Dica

    Caso tenha estilos repetidos em vários nós ou links, você talvez leve em consideração a aplicação de uma categoria a esses nós ou links e, em seguida, a aplicação de um estilo a essa categoria.Para obter mais informações, consulte Atribuir Categorias a Nós e Links e Atribuir Propriedades a Nós e Links.

  2. Abra o menu de atalho da superfície do gráfico. Escolha Ir para, DGML.

    O Visual Studio abre o arquivo .dgml do gráfico.

  3. Se um elemento <Styles></Styles> não existir, adicione um no elemento <DirectedGraph></DirectedGraph> depois do elemento <Links></Links>.

  4. No elemento <Styles></Styles>, no elemento <Style/> e especifique os seguintes atributos:

    • TargetType="Node | Link | Graph"

    • GroupLabel="NameInLegendBox"

    • ValueLabel="NameInStylePickerBox"

    Para aplicar um estilo personalizado a todos os tipos de destino, não use uma condição.

  1. No elemento <Style/>, adicione um elemento <Condition/> que contém um atributo Expression para especificar uma expressão que retorna um valor Booliano.

    Por exemplo:

    <Condition Expression="MyCategory"/>
    

    - ou -

    <Condition Expression="MyCategory > 100"/>
    

    - ou -

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

    Essa expressão usa a seguinte sintaxe BNF (Backus-Naur Form):

    <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> ::= literal de cadeia de caracteres único ou duplo

    <Number> ::= cadeia de caracteres de dígitos com vírgula decimal opcional

    É possível especificar vários elementos <Condition/> , que devem ser verdadeiros para aplicar o estilo.

  2. Na próxima linha depois do elemento <Condition/>, adicione um ou vários elementos <Setter/> para especificar um atributo Property e um atributo Value fixo ou atributo Expression calculado para aplicar ao gráfico, aos nós ou aos links que atendam à condição.

    Por exemplo:

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

Como um exemplo completo simples, a seguinte condição especifica que um nó é exibido em verde ou vermelho com base na possibilidade da categoria Passed estar definida como True ou False:

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph xmlns="https://schemas.microsoft.com/vs/2009/dgml">
   <Nodes>
      <Node Id="MyFirstNode" Passed="True" />
      <Node Id="MySecondNode" Passed="False" />
   </Nodes>
   <Links>
   </Links>
   <Styles>
      <Style TargetType="Node" GroupLabel="Passed" ValueLabel="True">
         <Condition Expression="Passed='True'"/>
         <Setter Property="Background" Value="Green"/>
      </Style>
      <Style TargetType="Node" GroupLabel="Passed" ValueLabel="False">
         <Condition Expression="Passed='False'"/>
         <Setter Property="Background" Value="Red"/>
      </Style>
   </Styles>
</DirectedGraph>

A seguinte tabela inclui algumas condições de exemplo que é possível usar:

Para

DGML de Exemplo

Defina o tamanho da fonte como uma função do número de linhas do código, que também altera o tamanho do nó. Este exemplo usa uma única expressão condicional para definir várias propriedades, 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>

Defina a cor do plano de fundo de um nó com base na propriedade Coverage. Os estilos são avaliados na ordem em que são exibidos, algo semelhante às instruções if-else.

Neste exemplo:

  1. Se Coverage for > 80, defina a propriedade Background como verde.

  2. Além disso, se Coverage for > 50, defina a propriedade Background como um sombreamento de laranja com base no valor da propriedade Coverage.

  3. Além disso, defina a propriedade Background como um sombreamento com base no valor da propriedade 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>

Defina a propriedade Shape como None de forma que o ícone substitua a forma. Use a propriedade Icon para especificar o local do ícone.

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

Modificar a caixa Legenda

É possível reorganizar, excluir ou inativar temporariamente estilos na caixa Legenda:

  1. Abra o menu de atalho de um estilo na caixa Legenda.

  2. Realize uma das seguintes tarefas:

    Para

    Escolha

    Mover o estilo para cima

    Mover Para Cima

    Mover o item para baixo

    Mover Para Baixo

    Excluir o item

    Excluir

    Inativar o item

    Desabilitar

    Reativar o item

    Habilitar

Copiar estilos de um gráfico para outro gráfico

  1. Verifique se a caixa Legenda é exibida no gráfico de origem. Se ela não estiver visível, abra o menu de atalho de uma área em branco do gráfico de origem. Escolha Mostrar Legenda.

  2. Abra o menu de atalho da caixa Legenda. Escolha Copiar Legenda.

  3. Cole a legenda no gráfico de destino.

É possível organizar nós e links atribuindo-se propriedades a eles. Por exemplo, é possível selecionar nós que tenham propriedades específicas de forma que você possa as agrupar, alterar o estilo ou ocultá-los.

Para atribuir uma propriedade a um nó

  1. Abra o menu de atalho do nó. Escolha Ir para, DGML.

    O Visual Studio abre o arquivo .dgml do gráfico e realça o elemento <Node/> desse nó.

  2. No elemento <Node/>, especifique o nome da propriedade e seu valor. Por exemplo:

    <Nodes>
       <Node Id="MyNode" MyPropertyName="PropertyValue" />
    </Nodes>
    
  3. Adicione um elemento <Property/> à seção <Properties> para especificar atributos como seu nome e tipo de dados visíveis:

    <Properties>
       <Property Id="MyPropertyName" Label="My Property" DataType="System.DataType"/>
    </Properties>
    
  1. No gráfico, mova o ponteiro sobre o link. Uma dica de ferramenta é exibida e identifica o nó de origem e o nó de destino do link. (Teclado: pressione Tab até que o foco esteja no link.)

  2. Abra o menu de atalho do gráfico. Escolha Ir para, DGML.

    O Visual Studio abre o arquivo .dgml do gráfico.

  3. Localize o elemento <Link/> que contém os nomes dos nós de origem e de destino.

  4. No elemento <Node/>, especifique o nome da propriedade e seu valor. Por exemplo:

    <Links>
       <Link Source="MyFirstNode" Target="MySecondNode" MyPropertyName="PropertyValue" />
    </Links>
    
  5. Adicione um elemento <Property/> à seção <Properties> para especificar atributos como seu nome e tipo de dados visíveis:

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

É possível organizar nós atribuindo-se categorias a eles. Por exemplo, é possível selecionar nós que estejam em determinadas categorias de forma que você possa as agrupar, alterar o estilo ou ocultá-los. É possível realçar links que tenham determinadas categorias. Para obter mais informações, consulte as seguintes seções:

  • Agrupar nós

  • Alterar o estilo de nós e links

  • Ocultar ou mostrar nós

Para atribuir uma categoria a um nó

  • Para atribuir a uma categoria predefinida, como Categoria 1, abra o menu de atalho do nó. Escolha Categorizar e uma categoria predefinida.

- ou -

  • Para criar e atribuir uma categoria personalizada:

    • Escolha o nó que você deseja categorizar. Pressione F4 para abrir a janela Propriedades. Digite o nome da categoria na propriedade Nova Categoria do nó. Pressione ENTER.

    - ou -

    1. Abra o menu de atalho do nó. Escolha Ir para, DGML.

      O Visual Studio abre o arquivo .dgml do gráfico e realça o elemento <Node/> desse nó.

    2. No elemento <Node/>, adicione um atributo Category para especificar o nome da categoria. Por exemplo:

      <Nodes>
         <Node Id="MyNode" Category="MyCategory" />
      </Nodes>
      
    3. Adicione um elemento <Category/> à seção <Categories> de forma que seja possível usar o atributo Label para especificar o texto de exibição dessa categoria:

      <Categories>
         <Category Id="MyCategory" Label="My Category" />
      </Categories>
      
  1. No gráfico, mova o ponteiro do mouse sobre o link para mostrar a dica de ferramenta e identificar o nó de origem e o nó de destino do link. (Teclado: pressione Tab até que o foco esteja no link.)

  2. Abra o menu de atalho do gráfico. Escolha Ir para, DGML.

    O Visual Studio abre o arquivo .dgml do gráfico.

  3. Localize o elemento <Link/> que contém os nomes dos nós de origem e de destino.

  4. No elemento <Link/>, adicione um atributo Category para especificar o nome da categoria. Por exemplo:

    <Links>
       <Link Source="MyFirstNode" Target="MySecondNode" Category="MyCategory"
    </Links>
    
  5. Adicione um elemento <Category/> à seção <Categories> de forma que seja possível usar o atributo Label para especificar o texto de exibição dessa categoria:

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

É possível criar categorias hierárquicas para ajudar a organizar nós e adicionar atributos a categorias filho usando-se a herança.

Para criar categorias hierárquicas

  • Adicione um elemento <Category/> da categoria pai e o atributo BasedOn ao elemento <Category/> da categoria filho.

    Por exemplo:

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

    Neste exemplo, o plano de fundo de MyFirstNode é verde porque seu atributo Category herda o atributo Background de MyParentCategory.

É possível vincular itens como, por exemplo, documentos ou URLs, a um nó ou a um link editando-se o arquivo .dgml do gráfico e adicionando-se um atributo Reference ao elemento <Node/> de um nó ou do elemento <Link/> para um link. Em seguida, é possível abrir e exibir o conteúdo do nó ou do link. O atributo Reference especifica o caminho desse conteúdo. Ele pode ser um caminho relativo ao local do arquivo .dgml ou um caminho absoluto.

Aviso

Se você usar caminhos relativos e o arquivo .dgml for movido para um local diferente, esses caminhos não serão mais resolvidos.Quando você tentar abrir e exibir o conteúdo vinculado, um erro indicando que o conteúdo não pode ser exibido será exibido.

Por exemplo, você talvez queira vincular os seguintes itens:

  • Para descrever as alterações feitas em uma classe, você talvez queira vincular a URL de um item de trabalho, do documento ou de outro arquivo .dgml ao nó de uma classe.

  • Você talvez queira vincular um diagrama da camada a um nó do grupo que representa uma camada na arquitetura lógica do software.

  • Para mostrar mais informações sobre um componente que expõe a interface, você talvez queira vincular um diagrama de componente ao nó dessa interface.

  • Vincule um nó a um item de trabalho ou a um bug do Team Foundation Server, ou qualquer outra informação relacionada ao nó.

Para vincular um item a um nó

  1. No gráfico, abra o menu de atalho do nó. Escolha Ir para, DGML.

    O Visual Studio abre o arquivo .dgml do gráfico e realça o elemento <Node/> desse nó.

  2. Realize uma das tarefas na tabela a seguir:

    Para vincular

    Realizar estas etapas

    Um único item

    • No elemento <Node/> ou <Link/>, adicione um atributo Reference para especificar o local do item.

      Dica

      Só é possível ter um atributo Reference por elemento.

    Por exemplo:

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

    Vários itens

    1. No elemento <Node/> ou <Link/>, adicione um novo atributo para especificar o local de cada referência.

    2. Na seção <Properties>:

      1. Adicione um elemento <Property/> para cada novo tipo de referência.

      2. Defina o atributo Id como o nome do novo atributo de referência.

      3. Adicione o atributo IsReference e defina-o como True para fazer a referência ser exibida no menu de atalho Goto do item.

      4. Use o atributo Label para especificar o texto de exibição no menu de atalho Goto do item.

    Por exemplo:

    <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>
    No gráfico, o nome do nó é exibido sublinhado. Ao abrir o menu de atalho do nó ou do link, você verá um menu de atalho **Goto** que contém os itens vinculados para que você escolha.
    1. Use o atributo ReferenceTemplate para especificar uma cadeia de caracteres comum, por exemplo, uma URL, usada por várias referências em vez de repetir a cadeia de caracteres na referência.

      O atributo ReferenceTemplate especifica um espaço reservado para o valor da referência. No seguinte exemplo, o espaço reservado {0} no atributo ReferenceTemplate será substituído pelos valores dos atributos MyFirstReference e MySecondReference no elemento <Node/> para produzir um caminho 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>
      
    2. Para exibir o item ou os itens referenciados do gráfico, abra o menu de atalho do nó ou do link. Escolha Goto e o item.

    Criar aliases para os caminhos mais usados

    A substituição dos caminhos mais usados por aliases ajuda a reduzir o tamanho do arquivo .dgml e o tempo necessário para carregar ou salvar o arquivo. Para criar um alias, adicione uma seção <Paths></Paths> ao final do arquivo .dgml. Nesta seção, adicione um elemento <Path/> para definir um alias para o caminho:

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

    Para fazer referência ao alias de um elemento no arquivo .dgml, inclua o valor Id do elemento <Path/> com um cifrão ($) e parênteses (()):

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

    Noções básicas sobre DGML (Directed Graph Markup Language)

    DGML usa XML simples para descrever gráficos cíclicos e direcionados acíclicos. Um gráfico direcionado é um conjunto de nós conectados por links ou bordas. Nós e links podem ser usados representam estruturas de rede como, por exemplo, elementos em um projeto de software. Use DGML para visualizar informações, realizar a análise de complexidade ou apenas procurar e editar gráficos direcionados.

    Nós e links são chamados de elementos do gráfico, ou apenas elementos. A seguinte tabela descreve os tipos de elementos usados em DGML:

    Dica

    Quando você edita um arquivo .dgml, o IntelliSense ajuda você a identificar atributos disponíveis para cada elemento e seus valores.Para especificar a cor em um atributo, use nomes de cores comuns como, por exemplo, "Azul", ou valores hexadecimais ARGB, como "#ffa0b1c3".DGML usa um subconjunto pequeno de formatos de definição de cor do WPF (Windows Presentation Foundation).Para obter mais informações, consulte Classe de Cores.

    Elemento

    Formato de Exemplo

    <DirectedGraph></DirectedGraph>

    Esse elemento é o elemento raiz do documento de gráfico direcionado (.dgml). Todos os outros elementos de DGML são exibidos no escopo desse elemento.

    A seguinte lista descreve atributos opcionais que é possível incluir:

    • Background - A cor do plano de fundo do gráfico

    • BackgroundImage - O local de um arquivo de imagem a ser usada como o plano de fundo do gráfico.

    • GraphDirection - Quando o gráfico for definido como o layout da árvore (Sugiyama), organize os nós de forma que a maioria dos links estejam na direção especificada: TopToBottom, BottomToTop, LeftToRight, ou RightToLeft. Consulte Procurar e reorganizar gráficos de dependência.

    • Layout - Defina o gráfico como os seguintes layouts: None, Sugiyama (layout da árvore), ForceDirected (clusters rápidos) ou DependencyMatrix. Consulte Procurar e reorganizar gráficos de dependência.

    • NeighborhoodDistance - Quando o gráfico for definido como o layout da árvore ou o layout de clusters rápidos, mostre apenas os nós que sejam números especificados (1-7) de links afastados de nós selecionados. Consulte Procurar e reorganizar gráficos de dependência.

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

    Esse elemento opcional contém uma lista de elementos <Node/>, que definem nós no gráfico. Para obter mais informações, consulte o elemento <Node/>.

    Dica

    Ao fazer referência a um nó indefinido em um elemento <Link/>, o gráfico cria um elemento <Node/> automaticamente.

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

    Esse elemento define um único nó. Ele é exibido na lista de elementos <Nodes><Nodes/>.

    Esse elemento deve incluir os seguintes atributos:

    • Id - O nome exclusivo do nó e o valor padrão do atributo Label, caso nenhum atributo Label separado seja especificado. Esse nome deve corresponder ao atributo Source ou Target do link que faz referência a ele.

    A seguinte lista descreve alguns dos atributos opcionais que é possível incluir:

    • Label - O nome para exibição do nó

    • Atributos de estilo. Consulte Aplicar Estilos Personalizados a Nós e Links.

    • Category - O nome de uma categoria que identifica os elementos que compartilham esse atributo. Para obter mais informações, consulte o elemento <Category/>.

    • Property - O nome de uma propriedade que identifica elementos que têm o mesmo valor da propriedade. Para obter mais informações, consulte o elemento <Property/>.

    • Group - Se o nó contiver outros nós, defina esse atributo como Expanded ou Collapsed para mostrar ou ocultar seu conteúdo. Deve haver um elemento <Link/> que inclua o atributo Category="Contains" e especifique o nó pai como o nó de origem e o nó filho como o nó de destino. Consulte Organizar Nós em Grupos.

    • Visibility - Defina esse atributo como Visible, Hidden ou Collapsed. Usa System.Windows.Visibility. Consulte Ocultar ou Mostrar Nós.

    • Reference - Defina esse atributo para vincular a um documento ou a uma URL. Consulte Vincular Itens a Nós.

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

    Esse elemento contém a lista de elementos <Link>, que definem links entre nós. Para obter mais informações, consulte o 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/>

    Esse elemento define um único link que conecta um nó de origem a um nó de destino. Ele é exibido na lista de elementos <Links></Links>.

    Dica

    Se esse elemento fizer referência a um nó indefinido, o documento gráfico criará automaticamente um nó com os atributos especificados, se houver.

    Esse elemento deve incluir os seguintes atributos:

    • Source - O nó de origem do link

    • Target - O nó de destino do link

    A seguinte lista descreve alguns dos atributos opcionais que é possível incluir:

    • Label - O nome para exibição do link

    • Atributos de estilo. Consulte Aplicar Estilos Personalizados a Nós e Links.

    • Category - O nome de uma categoria que identifica os elementos que compartilham esse atributo. Para obter mais informações, consulte o elemento <Category/>.

    • Property - O nome de uma propriedade que identifica elementos que têm o mesmo valor da propriedade. Para obter mais informações, consulte o 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>

    Esse elemento contém a lista de elementos <Category/>. Para obter mais informações, consulte o 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/>

    Esse elemento define um atributo Category, que é usado para identificar os elementos que compartilham esse atributo. Um atributo Category pode ser usado para organizar elementos gráficos, fornecer atributos compartilhados por meio da herança ou definir metadados adicionais.

    Esse elemento deve incluir os seguintes atributos:

    • Id - O nome exclusivo da categoria e o valor padrão do atributo Label, caso nenhum atributo Label separado seja especificado.

    A seguinte lista descreve alguns dos atributos opcionais que é possível incluir:

    • Label - Um nome amigável para o leitor da categoria.

    • BasedOn - A categoria pai da qual <Category/> herda o elemento atual.

      No exemplo desse elemento, a categoria FailedTest herda seu atributo Stroke da categoria PassedTest. Consulte "Para criar categorias hierárquicas" em Atribuir Categorias a Nós e Links.

    As categorias também fornecem um comportamento básico de modelo que controla a aparência de nós e links quando exibidos em um gráfico. Consulte Aplicar Estilos Personalizados a Nós e Links.

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

    Esse elemento contém a lista de elementos <Property/>. Para obter mais informações, consulte o 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/>

    Esse elemento define um atributo Property que é possível usar para atribuir um valor a qualquer elemento ou atributo DGML, inclusive categorias e outras propriedades.

    Esse elemento deve incluir os seguintes atributos:

    • Id - O nome exclusivo da propriedade e o valor padrão do atributo Label, caso nenhum atributo Label separado seja especificado.

    • DataType - O tipo de dados armazenado pela propriedade

    Se você quiser que a propriedade seja exibida na janela Propriedades, use a propriedade Label para especificar o nome para exibição da propriedade.

    Consulte Atribuir Propriedades a Nós e Links.

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

    Consulte também

    Conceitos

    Mapear dependências em seu código nos gráficos de dependência

    Procurar e reorganizar gráficos de dependência