Partilhar via


Demonstra Passo a passo: Writing a Visualizer em C#

This topic applies to:

Edition

Visual Basic

C#

F#

C++

Web Developer

Express

O tópico não é aplicável O tópico é aplicável O tópico é aplicável O tópico não é aplicável O tópico não é aplicável

Pro, Premium e Ultimate

O tópico não é aplicável O tópico é aplicável O tópico é aplicável O tópico não é aplicável O tópico não é aplicável

Esta explicação passo a passo mostra como gravar um visualizador simples usando o C#. The visualizer you will create in this walkthrough displays the contents of a string using a Windows forms message box. Este visualisador simples de seqüência não é especialmente útil em si, mas ele mostra as etapas básicas que devem ser seguidas para criar visualisadores mais úteis para outros tipos de dados.

ObservaçãoObservação

The dialog boxes and menu commands you see might differ from those described in Help, depending on your active settings or edition. Para alterar suas configurações, vá para o Ferramentas menu e escolha Import and Export Settings. For more information, see Trabalhando com configurações.

Visualizer code must be placed in a DLL, which will be read by the debugger. Portanto, a primeira etapa é criar um projeto de biblioteca de classe para a DLL.

Para criar um projeto de biblioteca de classe

  1. Sobre o arquivo menu, escolha novo e, em seguida, clique em Novo projeto.

  2. In the New Project dialog box, under Project Types, select Visual C#.

  3. In the Templates box, choose Class Library.

  4. No nome , digite um nome apropriado para a biblioteca de classes, como MyFirstvisualisador.

  5. Click OK.

Depois de criar a biblioteca de classes, você deve adicionar uma referência a Debuggervisualisadors para que você possa usar classes definidas para lá. Antes de adicionar a referência, no entanto, você deve renomear algumas classes para que eles tenham nomes significativos.

Para renomear Class1. cs e adicionar Microsoft.VisualStudio.Debuggervisualisadors

  1. Em Solution Explorer, Class1. cs com o botão direito e escolha Renomear no menu de atalho.

  2. Altere o nome de Class1. cs para algo significativo, como DebuggerSide. cs.

    ObservaçãoObservação

    Visual Studioa declaração de classe em DebuggerSide. cs para coincidir com o novo nome de arquivo é alterado automaticamente.

  3. Em Solution Explorer, com o botão direito referências e escolha Adicionar referência de no menu de atalho.

  4. In the Add Reference dialog box, on the .NET tab, choose Microsoft.VisualStudio.DebuggerVisualizers.DLL.

  5. Click OK.

  6. Em DebuggerSide. cs, adicione a seguinte instrução para o using instruções:

    using Microsoft.VisualStudio.DebuggerVisualizers;
    

Agora você está pronto para criar o código do lado do depurador. Este é o código que executa no depurador para exibir as informações que você deseja visualizar. Primeiro, você precisará alterar a declaração da DebuggerSide de objeto para que herde da classe base DialogDebuggerVisualizer.

Para herdar de DialogDebuggervisualisador

  1. In DebuggerSide.cs, go to the following line of code:

    public class DebuggerSide
    
  2. Altere o código para:

    public class DebuggerSide : DialogDebuggerVisualizer
    

DialogDebuggerVisualizertem um método abstract (Show) que você deve substituir.

Para substituir o método DialogDebuggervisualisador. show

  • Em public class DebuggerSide, adicione o seguinte método:

    override protected void Show(IDialogVisualizerService windowService, IVisualizerObjectProvider objectProvider)
    {
    }
    

O Show método contém o código que realmente cria a caixa de diálogo do visualisador ou outra interface de usuário e exibe as informações que foi passadas para o visualisador do depurador. You must add the code that creates the dialog box and displays the information. In this walkthrough, you will do this using a Windows forms message box. Primeiro, você deve adicionar uma referência e using a instrução para System.Windows.Forms.

Para adicionar System.Windows.Forms

  1. Em Solution Explorer, com o botão direito referências e escolha Adicionar referência de no menu de atalho.

  2. In the Add Reference dialog box, on the .NET tab, choose System.Windows.Forms.DLL.

  3. Click OK.

  4. Em DebuggerSide. cs, adicione a seguinte instrução para o using instruções:

    using System.Windows.Forms;
    

Now, you will add some code to create and show the user interface for your visualizer. Because this is your first visualizer, we will keep the user interface simple and use a Message Box.

  1. No Show método, adicione a seguinte linha de código:

    MessageBox.Show(objectProvider.GetObject().ToString());
    

    Este exemplo de código não inclui tratamento de erros. Você deve incluir o tratamento de erros em um visualisador real ou qualquer outro tipo de aplicativo.

  2. Sobre o Build menu, escolha Build myfirstvisualizer. The project should build successfully. Correct any build errors before continuing.

Que é o fim do código do lado do depurador. Não há mais uma etapa, no entanto; o atributo que informa o lado a ser depurado que conjunto de classes constitui o visualisador.

Para adicionar o código do debuggee side

  1. Adicione o seguinte código de atributo para DebuggerSide. cs, após a using declarações, mas antes namespace MyFirstVisualizer:

    [assembly:System.Diagnostics.DebuggerVisualizer(
    typeof(MyFirstVisualizer.DebuggerSide),
    typeof(VisualizerObjectSource),
    Target  = typeof(System.String),
    Description  = "My First Visualizer")]
    
  2. Sobre o Build menu, escolha Build myfirstvisualizer. The project should build successfully. Correct any build errors before continuing.

Neste ponto, seu primeiro visualisador é concluído. Se você seguiu as etapas corretamente, você pode criar o visualisador e instalá-lo em Visual Studio. Antes de instalar um visualizador em Visual Studio, no entanto, você deve testá-lo para certificar-se de que ele seja executado corretamente. Agora, você criará uma estrutura de teste para executar o visualisador sem instalá-lo em Visual Studio.

Para adicionar um método de teste para mostrar o visualisador

  1. Adicione o seguinte método à classe public DebuggerSide:

    public static void TestShowVisualizer(object objectToVisualize)
    {
       VisualizerDevelopmentHost visualizerHost = new VisualizerDevelopmentHost(objectToVisualize, typeof(DebuggerSide));
       visualizerHost.ShowVisualizer();
    }
    
  2. Sobre o Build menu, escolha Build myfirstvisualizer. The project should build successfully. Correct any build errors before continuing.

Next, you must create an executable project to call your visualizer DLL. For simplicity, we will use a Console Application project.

Para adicionar um projeto de aplicativo de console à solução

  1. Sobre o arquivo menu, escolha Adicionar e, em seguida, clique em Novo projeto.

  2. No Add New Project na caixa de modelos de caixa, escolha Aplicativo de Console.

  3. No nome , digite um nome significativo para o aplicativo de console, como MyTestConsole.

  4. Click OK.

Now, you must add the necessary references so MyTestConsole can call MyFirstVisualizer.

Para adicionar referências necessárias a MyTestConsole

  1. Em Solution Explorer, com o botão direito MyTestConsole e escolha Adicionar referência de no menu de atalho.

  2. In the Add Reference dialog box, .NET tab, choose Microsoft.VisualStudio.DebuggerVisualizers.DLL.

  3. Click OK.

  4. Com o botão direito MyTestConsole e escolha Add Reference novamente.

  5. No Add Reference caixa de diálogo, clique no projetos guia e clique em MyFirstvisualisador.

  6. Click OK.

Now, you will add the code to finish the test harness.

Para adicionar código ao MyTestConsole

  1. Em Solution Explorer, Program. cs com o botão direito e escolha Renomear no menu de atalho.

  2. Edite o nome de Program. cs para algo mais significativo, como TestConsole. cs.

    Note   Visual Studioa declaração de classe em TestConsole. cs para coincidir com o novo nome de arquivo é alterado automaticamente.

  3. Em TestConsole. cs, adicione o seguinte código para o using instruções:

    using MyFirstVisualizer;
    
  4. No método Main, adicione o seguinte código:

    String myString = "Hello, World";
    DebuggerSide.TestShowVisualizer(myString);
    

Now, you are ready to test your first visualizer.

Para testar o visualisador

  1. Em Solution Explorer, com o botão direito MyTestConsole e escolha Set as Startup Project no menu de atalho.

  2. On the Debug menu, choose Start.

    O aplicativo de console é iniciado e o visualizador aparece e exibe a seqüência de caracteres, "Hello, World".

Congratulations. You have just built and tested your first visualizer.

Se você deseja usar seu visualisador no Visual Studio em vez de simplesmente chamar o utilitário de teste, você precisa instalar o proprietário. For more information, see Como: Instalar um visualizador.

Using the Visualizer Item Template

Até agora, este passo a passo mostrou como criar um visualisador manualmente. This was done as a learning exercise. Agora que você sabe como um visualisador simples funciona, há uma maneira mais fácil de criar um: usando o modelo de item visualisador.

Primeiro, você precisa criar um novo projeto de biblioteca de classe.

Para criar uma nova biblioteca de classe

  1. Sobre o arquivo menu, escolha Adicionar e, em seguida, clique em Novo projeto.

  2. In the Add New Project dialog box, under Project Types, select Visual C#.

  3. In the Templates box, choose Class Library.

  4. No nome , digite um nome apropriado para a biblioteca de classes, como MySecondvisualisador.

  5. Click OK.

Now, you can add a visualizer item to it:

Para adicionar um item visualisador

  1. Em Solution Explorer, clique com o botão direito MySecondvisualisador.

  2. No menu de atalho, escolha Add e, em seguida, clique em Novo Item.

  3. In the Add New Item dialog box, under Templates, Visual Studio Installed Templates, select Debugger Visualizer.

  4. No nome , digite um nome apropriado, como Secondvisualisador.

  5. Click Add.

Isso é tudo que há nele. Examine o arquivo Secondvisualisador e exibir o código que o modelo é adicionado para você. Go ahead and experiment with the code. Now that you know the basics, you are on your way to creating more complex and useful visualizers of your own.

Consulte também

Tarefas

Como: Instalar um visualizador

Conceitos

Arquitetura de Visualizador

Outros recursos

Visualizadores