TextPoint 接口

表示文本文档中的文本位置。

命名空间:  EnvDTE
程序集:  EnvDTE(在 EnvDTE.dll 中)

语法

声明
<GuidAttribute("7F59E94E-4939-40D2-9F7F-B7651C25905D")> _
Public Interface TextPoint
[GuidAttribute("7F59E94E-4939-40D2-9F7F-B7651C25905D")]
public interface TextPoint
[GuidAttribute(L"7F59E94E-4939-40D2-9F7F-B7651C25905D")]
public interface class TextPoint
[<GuidAttribute("7F59E94E-4939-40D2-9F7F-B7651C25905D")>]
type TextPoint =  interface end
public interface TextPoint

TextPoint 类型公开以下成员。

属性

  名称 说明
公共属性 AbsoluteCharOffset 获取文档开头到 TextPoint 对象的字符偏移量,从 1 开始。
公共属性 AtEndOfDocument 获取指示对象是否在文档结尾的值。
公共属性 AtEndOfLine 获取指示对象是否在行尾的值。
公共属性 AtStartOfDocument 获取指示对象是否在文档开头的值。
公共属性 AtStartOfLine 获取指示对象是否在行首的值。
公共属性 CodeElement 返回 TextPoint 位置处的代码元素。
公共属性 DisplayColumn 返回包含 TextPoint 对象的当前显示列的编号。
公共属性 DTE 获取顶级扩展性对象。
公共属性 Line 获取对象的行号。
公共属性 LineCharOffset 获取对象的字符偏移量。
公共属性 LineLength 获取包含对象的行中的字符数,不包括换行符。
公共属性 Parent 获取 TextPoint 对象的直接父对象。

页首

方法

  名称 说明
公共方法 CreateEditPoint 在调用对象的位置创建并返回一个 EditPoint 对象。
公共方法 EqualTo 返回一个值,指示给定点对象的 AbsoluteCharOffset 属性值是否等于调用TextPoint 对象的该属性值。
公共方法 GreaterThan 指示调用对象的 AbsoluteCharOffset 属性值是否大于给定点对象的该属性值。
公共方法 LessThan 指示被调用对象的 AbsoluteCharOffset 属性值是否小于给定对象的该属性值。
公共方法 TryToShow 尝试显示文本点的位置。

页首

备注

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 TextPoint
   endpt = 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

请参见

参考

EnvDTE 命名空间