文本在传统 API 的缓冲事件

文本缓冲区对象发出允许您针对不同的情况的几种不同的事件。

当您使用传统的 API 时,应实现以下接口以便接收更改的通知到文本缓冲区的。 公开接口在文本缓冲区使用文本缓冲区的 IConnectionPointContainer 接口接收行更改的通知从此缓冲区中。 有关更多信息,请参见 如何:文本缓冲区注册事件与传统 API。 在 IVsTextStreamEventsIVsTextLinesEvents 接口,更改返回在一个或二维坐标上,分别。

文本缓冲区接口

以下文本缓冲区对象实现的接口。

接口

说明

IVsCompoundAction

启用复合事件的创建 (即在单个分组操作撤消/重做单位)。

IVsPersistDocData

启用持久性文档文本缓冲区管理的数据。

IVsTextBuffer

提供基本服务;使用由许多客户端。

IVsTextLines

使用二维坐标,提供读写功能。 继承自 IVsTextBuffer

IVsTextScanner

提供更快的,面向流,对文本进行顺序访问缓冲区。

IVsTextStream

使用一维坐标,提供读写功能。 继承自 IVsTextBuffer

IVsUserData

提供对属性的泛型集合。 最重要的属性是名称或标记,缓冲区。 您使用此接口的缓冲区可以存储拥有随机数据通过创建 GUID 并将其用作键。

IConnectionPointContainer

支持事件连接点。

text 缓冲事件接口

以下文本缓冲区事件通知的接口。

接口

说明

IVsTextBufferEvents

,在新语言服务与文本缓冲区时,将通知客户端。

IVsTextBufferDataEvents

通知客户端,当文本缓冲区初始化时,因此,当对数据在文本缓冲区中。

IVsTextStreamEvents

更改通知的客户端基础文本缓冲区中的一维坐标上。

IVsTextLinesEvents

更改通知的客户端基础文本缓冲区中的二维坐标上。

IVsUserDataEvents

更改通知的客户端用户的数据。

IVsPreliminaryTextChangeCommitEvents

通知的最后使用自定义笔势触发事件并提供更改的文本范围。 IVsPreliminaryTextChangeCommitEvents 接口不会激发响应撤消或重做命令。 事件仅有一个取消管理器的缓冲区进行激发。 ,在提交更改之前,IVsPreliminaryTextChangeCommitEvents 在其他事件之前引发,例如相当列表,以确定其他事件不修改该文本。 VSPackage 必须监视 IVsPreliminaryTextChangeCommitEvents 接口或接口, IVsFinalTextChangeCommitEvents ,但不能同时包含二者。

IVsFinalTextChangeCommitEvents

通知的最后使用自定义笔势触发事件并提供更改的文本范围。 IVsFinalTextChangeCommitEvents 接口不会激发响应撤消或重做命令。 事件仅有一个取消管理器的缓冲区进行激发。 IVsFinalTextChangeCommitEvents 仅供使用。对编辑的整个控件的语言服务或其他对象。 VSPackage 必须监视 IVsPreliminaryTextChangeCommitEvents 接口或接口, IVsFinalTextChangeCommitEvents ,但不能同时包含二者。

请参见

任务

如何:文本缓冲区注册事件与传统 API

概念

访问文本缓冲区使用传统的 API