using Microsoft.VisualStudio.DebuggerVisualizers; using System; using System.Collections.Generic; $if$ ($targetframeworkversion$ >= 3.5)using System.Linq; $endif$$if$ ($targetframeworkversion$ >= 4.5)using System.Threading.Tasks; $endif$using System.Windows.Forms; namespace $rootnamespace$ { // TODO: Folgendes zur Definition von SomeType hinzufügen, um diese Schnellansicht beim Debugging von Instanzen von SomeType anzuzeigen: // // [DebuggerVisualizer(typeof($safeitemrootname$))] // [Serializable] // public class SomeType // { // ... // } // /// /// Eine Schnellansicht für SomeType. /// public class $safeitemrootname$ : DialogDebuggerVisualizer { protected override void Show(IDialogVisualizerService windowService, IVisualizerObjectProvider objectProvider) { if (windowService == null) throw new ArgumentNullException("windowService"); if (objectProvider == null) throw new ArgumentNullException("objectProvider"); // TODO: Das Objekt abrufen, für das eine Schnellansicht angezeigt werden soll. // Wandeln Sie das Ergebnis von objectProvider.GetObject() // in den Typ des Objekts um, das in der Schnellansicht angezeigt wird. object data = (object)objectProvider.GetObject(); // TODO: Ihre Ansicht des Objekts anzeigen. // Ersetzen Sie displayForm durch ein eigenes benutzerdefiniertes Formular oder Steuerelement. using(Form displayForm = new Form()) { displayForm.Text = data.ToString(); windowService.ShowDialog(displayForm); } } // TODO: Folgendes zum Testcode hinzufügen, um die Schnellansicht zu testen: // // $safeitemrootname$.TestShowVisualizer(new SomeType()); // /// /// Testet die Schnellansicht, indem sie außerhalb des Debuggers gehostet wird. /// /// Das in der Schnellansicht anzuzeigende Objekt. public static void TestShowVisualizer(object objectToVisualize) { VisualizerDevelopmentHost visualizerHost = new VisualizerDevelopmentHost(objectToVisualize, typeof($safeitemrootname$)); visualizerHost.ShowVisualizer(); } } }