TextPoint - интерфейс
Обновлен: Ноябрь 2007
Представляет расположение текста в текстовом документе.
Пространство имен: EnvDTE
Сборка: EnvDTE (в EnvDTE.dll)
Синтаксис
'Декларация
<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
Заметки
Объект TextPoint позволяет находить место расположения тех или иных элементов в документе. Используя свойства объекта TextPoint, можно искать текст по:
Номерам строк.
Числу знаков в строке.
Абсолютному числу знаков от начала документа.
Отображаемым столбцам.
Объекты TextPoint похожи на объекты EditPoint, за исключением того, что они оперируют данными в текстовом буфере, а не текстом, отображаемом в редакторе кода. На текст в документе влияют общие настройки редактора, например перенос слов или виртуальные пробелы, а на текст в буфере — нет.
При правке документа объекты TextPoint не перемещаются по отношению к окружающему их тексту. Другими словами, если текст вставлен перед точкой текста, значение его свойства AbsoluteCharOffset увеличивается, чтобы отобразить его новое расположение дальше от начала документа. Если несколько объектов TextPoint находятся в одном месте, и объект EditPoint используется для вставки нового текста, то новые знаки будут расположены справа от всех объектов TextPoint, за исключением того объекта, который используется для вставки текста.
Любой оператор, пробующий изменить объект TextDocument, потерпит неудачу, если TextDocument доступен только для чтения.
Примеры
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