Frage

Ich arbeite mit dem Visual Studio 2008-Objektmodell wie hier zu sehen: VS2008 Automatisierungsobjektmodell-Diagramm .

Ich mag auf einem CodeElement in einem VS2008 Marco, handeln, die durch die Benutzertextauswahl im aktuellen CS- Dokument gewählt wird.

Während ich nicht wirklich egal, wie ich es bekommen, ist es das, was ich versucht: Das VS-Objektmodell gibt Ihnen DTE.ActiveWindow.Selection, welche vom Typ TextSelection ist, und dann gibt es die DTE.ActiveDocument.ProjectItem.FileCodeModel.CodeElementFromPoint() Methode, die eine TextPoint und vsCMEElement als Parameter übernimmt und gibt die CodeElment wie ich will.

Allerdings kann ich nicht scheinen, eine TextElement von einem TextSelection zu erhalten.

Kann mir jemand sagen, wie man einen CodeElement aus dem ausgewählten Text in einer CS-Datei zu bekommen?

War es hilfreich?

Lösung

Versuchen Sie folgendes:

= Textselection DTE.ActiveWindow.Selection

= Codeelement textSelection.ActivePoint.CodeElement (vsCMElement.vsCMElementClass)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top