Návod: Zápis vizualizéru v jazyce C#
Tento návod ukazuje, jak napsat jednoduchý vizualizér pomocí jazyka C#.Vizualizér vytvořený pomocí tohoto návodu zobrazuje obsahy řetězce pomocí okna se zprávou formuláře Windows.Tento jednoduchý vizualizér řetězců není použitelný sám o sobě, ale ukazuje základní kroky, které vedou k vytvoření použitelnějších vizualizérů ostatních datových typů.
[!POZNÁMKA]
Dialogová okna a příkazy nabídek, které vidíte, se mohou lišit od těch popsaných v nápovědě v závislosti na aktivních nastaveních nebo edici.Chcete-li změnit nastavení, zvolte nabídku Nástroje a zvolte Nastavení importu a exportu.Další informace naleznete v tématu Přizpůsobení nastavení pro vývoj v sadě Visual Studio.
Vizualizér kódu musí být umístěn v knihovně DLL, která bude načtena ladicím programem.A proto je prvním krokem vytvoření projektu knihovny tříd pro knihovnu DLL.
Vytvoření projektu knihovny tříd
V nabídce Soubor zvolte Nový a potom klikněte na Nový projekt.
V dialogovém okně Nový projekt pod Typ projektu zvolte Visual C#.
V poli Šablony vyberte Knihovna tříd.
Do pole Název napište příslušný název knihovny tříd jako je například MyFirstVisualizer.
Klikněte na tlačítko OK.
Po vytvoření knihovny tříd je zapotřebí přidat referenci na Microsoft.VisualStudio.DebuggerVisualizers.DLL, aby bylo možné použít třídy definované v této knihovně.Před přidáním reference je nutné přejmenovat některé třídy tak, aby měly smysluplné názvy.
Přejmenování Class1.cs a Microsoft.VisualStudio.DebuggerVisualizers
V Průzkumníku řešení klikněte pravým tlačítkem na Class1.cs a vyberte z místní nabídky Přejmenovat.
Změňte název z Class1.cs na něco smysluplného, jako je například DebuggerSide.cs.
[!POZNÁMKA]
Visual Studio automaticky změní deklaraci třídy v DebuggerSide.cs, aby souhlasila s novým názvem souboru.
V Průzkumníku řešení klikněte pravým tlačítkem na Reference a v místní nabídce zvolte Přidat referenci.
V dialogovém okně Přidat reference na záložce .NET zvolte Microsoft.VisualStudio.DebuggerVisualizers.DLL.
Klikněte na tlačítko OK.
Ve třídě DebuggerSide.cs přidejte do příkazů using následující příkaz:
using Microsoft.VisualStudio.DebuggerVisualizers;
Nyní jste připraveni vytvořit kód na straně ladicího programu.Toto je kód, který je spouštěn v rámci ladicího programu pro zobrazení informace, kterou je potřeba vizualizovat.Nejdříve je třeba změnit deklaraci objektu DebuggerSide, aby dědil ze základní třídy DialogDebuggerVisualizer.
Dědění z DialogDebuggerVisualizer
Ve třídě DebuggerSide.cs přejděte na následující řádek kódu:
public class DebuggerSide
Přidání kódu:
public class DebuggerSide : DialogDebuggerVisualizer
DialogDebuggerVisualizer obsahuje jednu abstraktní metodu (Show), kterou je třeba přepsat.
Přepsání metody DialogDebuggerVisualizer.Show
Do public class DebuggerSide přidejte následující metodu:
override protected void Show(IDialogVisualizerService windowService, IVisualizerObjectProvider objectProvider) { }
Metoda Show obsahuje kód, který v podstatě vytváří dialogové okno vizualizéru nebo jiné uživatelské rozhraní a zobrazuje informaci o předání vizualizéru z ladicího programu.Je zapotřebí napsat kód, který vytvoří dialogové okno a zobrazí informaci.V tomto návodu bude toto předvedeno pomocí dialogového okna formulářů Windows.Za prvé je zapotřebí přidat referenci a příkaz using pro System.Windows.Forms.
Přidání System.Windows.Forms
V Průzkumníku řešení klikněte pravým tlačítkem na Reference a v místní nabídce zvolte Přidat referenci.
V dialogovém okně Přidat referenci na záložce .NET zvolte System.Windows.Forms.DLL.
Klikněte na tlačítko OK.
Ve třídě DebuggerSide.cs přidejte do příkazů using následující příkaz:
using System.Windows.Forms;
Nyní budete pro vizualizér přidávat kód pro vytvoření a zobrazení uživatelského rozhraní.Jelikož je toto první vizualizér, ponecháme uživatelské prostředí jednoduché a použijeme okno se zprávou.
Zobrazení výstupu vizualizéru a okna pro zprávu
Do metody Show přidejte následující řádek kódu:
MessageBox.Show(objectProvider.GetObject().ToString());
V tomto příkladu není zahrnuto zpracování chyb.V reálném vizualizéru nebo v jakékoliv jiné aplikaci by mělo být zpracování chyb zahrnuto.
V nabídce Sestavit zvolte Sestavit MyFirstVisualizer.Sestavení projektu by mělo být úspěšně dokončeno.Před pokračováním opravte všechny chyby při sestavení.
Zde končí kód na straně ladicího programu.Avšak následuje jeden dodatečný krok. Atribut, který říká laděné straně, která z kolekce tříd zahrnuje vizualizér.
Přidání kódu na straně ladění
Do třídy DebuggerSide.cs je zapotřebí přidat následující kód atributu, za příkazy using, ale před namespace MyFirstVisualizer:
[assembly:System.Diagnostics.DebuggerVisualizer( typeof(MyFirstVisualizer.DebuggerSide), typeof(VisualizerObjectSource), Target = typeof(System.String), Description = "My First Visualizer")]
V nabídce Sestavit zvolte Sestavit MyFirstVisualizer.Sestavení projektu by mělo být úspěšně dokončeno.Před pokračováním opravte všechny chyby při sestavení.
V této chvíli je první vizualizér dokončen.Pokud jste následovali kroky správně, můžete vizualizér sestavit a nainstalovat jej do Visual Studio.Avšak před instalací vizualizéru do Visual Studio je zapotřebí jej otestovat a ujistit se, zda pracuje správně.Nyní vytvoříte správce testů pro spuštění vizualizéru aniž by byl nainstalován do Visual Studio.
Přidání testovací metody pro zobrazení vizualizéru
Do třídy public DebuggerSide přidejte následující metodu:
public static void TestShowVisualizer(object objectToVisualize) { VisualizerDevelopmentHost visualizerHost = new VisualizerDevelopmentHost(objectToVisualize, typeof(DebuggerSide)); visualizerHost.ShowVisualizer(); }
V nabídce Sestavit zvolte Sestavit MyFirstVisualizer.Sestavení projektu by mělo být úspěšně dokončeno.Před pokračováním opravte všechny chyby při sestavení.
V dalším kroku je nutné vytvořit spustitelný projekt pro zavolání knihovny DLL vizualizéru.Pro jednoduchost použijeme projekt konzolové aplikace.
Do řešení přidejte nový projekt konzolové aplikace s názvem .
V nabídce Soubor klikněte na položku Přidat a poté na položku Nový projekt.
V dialogovém okně Přidat nový projekt v poli Šablony zvolte Konzolová aplikace.
Do pole Název napište smysluplný název konzolové aplikace, jako je například MyTestConsole.
Klikněte na tlačítko OK.
Nyní je zapotřebí přidat nezbytné reference, aby mohl MyTestConsole zavolat MyFirstVisualizer.
Přidání nezbytných referencí na MyTestConsole
V Průzkumníku řešení klikněte pravým tlačítkem na MyTestConsole a v místní nabídce zvolte Přidat referenci.
V dialogovém okně Přidat reference na záložce .NET zvolte Microsoft.VisualStudio.DebuggerVisualizers.DLL.
Klikněte na tlačítko OK.
Klikněte pravým tlačítkem na MyTestConsole a znovu zvolte Přidat reference.
V dialogovém okně Přidat reference klikněte na záložku Projekty a poté klikněte na MyFirstVisualizer.
Klikněte na tlačítko OK.
Nyní budete přidávat kód pro dokončené správce testů.
Přidání kódu do MyTestConsole
V Průzkumníku řešení klikněte pravým tlačítkem na Program.cs a vyberte z místní nabídky Přejmenovat.
Změňte název z Program.cs na něco smysluplného, jako je například TestConsole.cs.
Poznámka Visual Studio automaticky změní deklaraci třídy v TestConsole.cs, aby souhlasila s novým názvem souboru.
Ve třídě TestConsole.cs přidejte do příkazů using následující kód:
using MyFirstVisualizer;
Do metody Main přidejte následující kód:
String myString = "Hello, World"; DebuggerSide.TestShowVisualizer(myString);
Nyní jste připraveni otestovat první vizualizér.
Otestování vizualizéru
V Průzkumníku řešení klikněte pravým tlačítkem na MyTestConsole a v místní nabídce zvolte Nastavit jako spouštěný projekt.
V nabídce Ladit klikněte na příkaz Spustit.
Konzolová aplikace je spuštěna a vizualizér zobrazí řetězec "Hello, World."
Gratulujeme!Právě jste sestavili a otestovali první vizualizér.
Pokud byste raději používali vizualizér v rámci Visual Studio, než ho volali skrz správce testů, musíte jej nainstalovat.Další informace naleznete v tématu Postupy: Instalace vizualizéru.
Použití šablony položky vizualizéru
Prozatím tento návod ukazoval, jak vytvořit vizualizér ručně.To bylo provedeno způsobem výukové lekce.Teď, když víte, jak jednoduchý vizualizér pracuje, existuje jednodušší cesta k jeho vytvoření: To je pomocí šablony položky vizualizéru.
Nejdříve je třeba vytvořit nový projekt knihovny tříd.
Vytvoření nového projektu knihovny tříd
V nabídce Soubor klikněte na položku Přidat a poté na položku Nový projekt.
V dialogovém okně Přidat nový projekt pod Typ projektu zvolte Visual C#.
V poli Šablony vyberte Knihovna tříd.
Do pole Název napište příslušný název knihovny tříd jako je například MySecondVisualizer.
Klikněte na tlačítko OK.
Nyní do ni můžete přidat novou položku vizualizéru:
Přidání položky vizualizéru
V Průzkumníku řešení klikněte pravým tlačítkem myši na MySecondVisualizer.
V místní nabídce vyberte Přidat a poté klikněte na Nová položka.
V dialogovém okně Přidat novou položku pod Šablony, Nainstalované šablony Visual Studio zvolte Vizualizér ladicího programu.
Do pole Název napište příslušný název, jako je například SecondVisualizer.cs.
Klikněte na tlačítko Přidat.
To je vše, co k tomu je.Podívejte se na soubor SecondVisualizer.cs a prohlédněte si kód, který za vás vložila šablona.Jděte do toho a experimentujte s kódem.Teď, když umíte základy, můžete vytvářet své vlastní komplexnější a více použitelné vizualizéry.
Viz také
Úkoly
Postupy: Instalace vizualizéru