Freigeben über


Gewusst wie: Verwenden eines Makros zum Hinzufügen von Text in einem Editor für Visual Basic- oder C#-Code

Aktualisiert: November 2007

Mithilfe des Erweiterbarkeitsobjektmodells können Sie Code in einem beliebigen Editor für Visual Basic-, Visual C#- oder Visual J#-Code hinzufügen. Zur möglichen Verwendung dieser Funktion gehört das Hinzufügen neuer Prozeduren sowie von Standardkommentarblöcken. Bei dieser Aufgabe wird vorausgesetzt, dass Sie bereits Kenntnisse über das Aufrufen der Entwicklungsumgebung für Makros sowie das Erstellen eines Makroprojekts besitzen. Weitere Informationen finden Sie unter Dialogfeld "Neues Projekt hinzufügen". Um das folgende Makrobeispiel implementieren zu können, muss ein Visual Basic-Projekt geöffnet sein.

In den folgenden Schritten wird Text in einem Editor für Visual Basic-Code hinzugefügt. Um einem Visual C#-Code-Editor Code hinzuzufügen, verwenden Sie den prjKindCSharpProject-Enumerationswert in Schritt fünf (5). Um einem Visual J#-Code-Editor Code hinzuzufügen, verwenden Sie den prjKindVJSharpProject-Enumerationswert in Schritt fünf (5).

Hinweis:

Je nach den aktiven Einstellungen oder der verwendeten Version können sich die angezeigten Dialogfelder und Menübefehle von den in der Hilfe beschriebenen unterscheiden. Bei der Entwicklung dieser Prozeduren war die Option Allgemeine Entwicklungseinstellungen aktiviert. Sie können die Einstellungen ändern, indem Sie im Menü Extras auf Einstellungen importieren und exportieren klicken. Weitere Informationen finden Sie unter Visual Studio-Einstellungen.

So fügen Sie Text am Beginn des aktiven Visual Basic-Code-Editors hinzu

  1. Erstellen Sie ein neues Makromodul mit dem Namen EditorMacros.

  2. Erstellen Sie ein neues Makro (AddSomeText) durch Hinzufügen des folgenden Codes zum Makromodul:

    Public Sub AddSomeText()
       ' Will add code here to add text.
    End Sub
    
  3. Deklarieren und initialisieren Sie eine Variable, um auf den geöffneten Code-Editor zu verweisen.

    Dim doc As Document = DTE.ActiveDocument
    

    Weitere Informationen finden Sie unter dem Document-Objekt und der ActiveDocument-Eigenschaft.

  4. Das Document-Objekt enthält ein TextDocument-Objekt, auf das Sie wie unten dargestellt mit der Object-Methode zugreifen können.

    Dim textDoc As TextDocument = _
       CType(doc.Object("TextDocument"), TextDocument)
    
  5. Um sicherzustellen, dass Sie Code im Editor für Visual Basic-Code hinzufügen, können Sie die Kind-Eigenschaft des Projekts testen, in dem das Fenster enthalten ist.

    If doc.ProjectItem.ContainingProject.Kind = _
    VSLangProj.PrjKind.prjKindVBProject Then
       ' Add code here to insert text.
    End If
    
  6. Mithilfe des TextDocument-Objekts können Sie einen Bearbeitungspunkt am Beginn des Editors erstellen. Fügen Sie dann mit der Insert-Methode der Selection-Eigenschaft Text im Editor hinzu. Weitere Informationen finden Sie unter der CreateEditPoint-Methode und der Selection-Eigenschaft.

    textDoc.StartPoint.CreateEditPoint()
    textDoc.Selection.Insert("' A comment")
    

    Das vollständige Makro lautet folgendermaßen:

    Public Sub AddSomeText()
       Dim doc As Document = DTE.ActiveDocument
       Dim textDoc As TextDocument = _
          CType(doc.Object("TextDocument"), TextDocument)
       If doc.ProjectItem.ContainingProject.Kind = _
          VSLangProj.PrjKind.prjKindVBProject Then
          textDoc.StartPoint.CreateEditPoint()
          textDoc.Selection.Insert("' A comment")
       End If
    End Sub
    
  7. Speichern Sie das Makro, schließen Sie die Makro-IDE, und führen Sie das Makro über den Makro-Explorer aus.

Siehe auch

Referenz

ActiveDocument

Document

TextDocument