TextPoint-Schnittstelle
Aktualisiert: November 2007
Stellt eine Textposition in einem Textdokument dar.
Namespace: EnvDTE
Assembly: EnvDTE (in EnvDTE.dll)
Syntax
<GuidAttribute("7F59E94E-4939-40D2-9F7F-B7651C25905D")> _
Public Interface TextPoint
Dim instance As TextPoint
[GuidAttribute("7F59E94E-4939-40D2-9F7F-B7651C25905D")]
public interface TextPoint
[GuidAttribute(L"7F59E94E-4939-40D2-9F7F-B7651C25905D")]
public interface class TextPoint
public interface TextPoint
Hinweise
Mit dem TextPoint-Objekt können Sie Positionen in einem Dokument suchen. Mit den Eigenschaften des TextPoint-Objekts können Sie Text mithilfe folgender Angaben suchen:
Zeilennummern
Nummer des Zeichens in einer Zeile
Absolute Zeichenpositionen vom Anfang des Dokuments
Anzeigespalten
TextPoint-Objekte sind mit EditPoint-Objekten vergleichbar, sie werden jedoch auf in einem Code-Editor angezeigten Text angewendet und nicht auf Daten im Textpuffer. Dies liegt daran, dass globale Zustände des Editors, beispielsweise Zeilenumbrüche und virtuelle Bereiche, Einfluss auf Text in einem Dokument haben, jedoch nicht auf den Textpuffer.
Beim Bearbeiten eines Dokuments werden TextPoint-Objekte nicht relativ zum umgebenden Text verschoben. Wenn daher Text vor einem Textpunkt eingefügt wird, wird der Wert der zugehörigen AbsoluteCharOffset-Eigenschaft erhöht, um die neue Position weiter unten im Dokument widerzuspiegeln. Wenn sich mehrere TextPoint-Objekte an derselben Position befinden und ein EditPoint-Objekt zum Einfügen von neuem Text verwendet wird, befinden sich die neuen Zeichen mit Ausnahme des zum Einfügen des Textes verwendeten Objekts rechts von allen TextPoint-Objekten.
Jeder Versuch, ein TextDocument-Objekt zu ändern, schlägt fehl, solange das TextDocument schreibgeschützt ist.
Beispiele
Sub TextPointExample()
' Comments a region of code.
Dim selection As TextSelection
selection = dte.ActiveDocument.selection()
Dim Start As Editpoint
Start = selection.TopPoint.CreateEditPoint()
Dim endpt As TextPointendpt = selection.BottomPoint
Dim undoObj As UndoContext = dte.UndoContext
undoobj.Open("Comment Region")
Do While (Start.LessThan(endpt))
Start.Insert("//")
Start.LineDown()
Start.StartOfLine()
Loop
undoobj.Close()
End Sub