Visual Studio 2010 SDK - Wie platziere ich ein Schmuckstück neben XML-Kommentargruppen?

8

Ich habe Probleme, herauszufinden, wie dies zu tun ist, und die Visual Studio SDK-Referenz ist ebenfalls nicht sehr hilfreich.

Ich versuche herauszufinden, wie man eine NormalizedSnapshotSpanCollection von XML-Kommentaren erhält. Ich möchte ein Symbol daneben platzieren ... Ich möchte kein Symbol neben jeder Zeile, sondern nur neben der ersten Zeile jeder Gruppe ...

%Vor%     
michael 14.02.2012, 19:11
quelle

1 Antwort

12

Hier ist, was ich bekommen könnte, ich denke, es ist ziemlich ähnlich zu dem, was Sie brauchen. Ich werde dies mit mehr Details aktualisieren, wenn Sie Fragen haben.

Ich begann mit diesem Beispiel von der VS 2010 SDK-Website. Es ist schon ziemlich nah an dem, was Sie brauchen, erfordert aber mehrere weitere Schritte.

Laden Sie die C # -Version herunter, entpacken Sie sie in einen Ordner, kompilieren Sie sie. Um es auszuführen und zu testen, müssen Sie zu Project & gt; Eigenschaften & gt; Debuggen

Sie müssen die Option "Externes Programm starten" auswählen und den Pfad zu Ihrer VS 2010 App festlegen, z. B. C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe

In den Befehlszeilenargumenten set: /rootsuffix Exp

Nun sollten Sie in der Lage sein, es auszuführen, ein Beispielprojekt im geöffneten VS zu erstellen, und wenn Sie irgendwo eine sechsstellige Zahl wie 00AA00 eingeben, wird es als ein Rechteck mit der entsprechenden Farbe angezeigt. Schließen Sie die Debug-VS-Instanz.

Lasst uns jetzt etwas Code bearbeiten. In ColorAdornmentTagger.cs kommentiere das define #define HIDING_TEXT . Dies zeigt die Verzierung neben dem Text, nicht stattdessen.

In derselben Datei müssen Sie herausfinden, wo SnapshotSpan adornmentSpan initialisiert ist, und die Zeile ändern in:

%Vor%

Dies wird Schmuck nach der Textspanne platzieren, nicht davor.

In ColorTagger.cs . Ändern Sie die Regex im Konstruktor, sodass der Konstruktor nun aussieht wie

%Vor%

Damit wird die Regex die Methodenkommentarzeile erkennen.

Andere Methoden in dieser Klasse werden nicht verwendet, Sie können sie kommentieren oder eine zufällige Farbe zurückgeben.

In der 'ColorAdornment.cs'. Dies ist die Schmuck WPF Kontrolle selbst. Ändern Sie zuerst die Basisklasse von Button in ContentControl . Ändern Sie den Konstruktor der Klasse in

%Vor%

Sie können den Bildpfad auf den gewünschten Bildpfad einstellen. Ich habe gerade SO Logo von Wikipedia heruntergeladen und in meinen temporären Ordner gelegt.

Kompilieren und ausführen Sie sollten das SO-Logo neben den Kommentaren in der debug VS-Instanz sehen können.

Einige zusätzliche Bemerkungen.

Zuerst erhalten Sie auf diese Weise einfach einen funktionierenden Prototyp, Sie sollten die Klassen umbenennen und den Code für Ihre Bedürfnisse aufräumen.

Zweitens, als ich es debuggte, war mein Debug VS von Zeit zu Zeit eingefroren. Ich denke, das könnte mit Sperren in IntraTextAdornmentTagger.cs

zusammenhängen

Wenn Sie auch einfrieren sehen, versuchen Sie, die folgende Methode auf diese Weise zu aktualisieren:

%Vor%

und das AsyncUpdate auf diese Weise:

%Vor%     
Max Galkin 21.02.2012, 22:37
quelle