文本缓冲区对象发出允许您针对不同的情况的几种不同的事件。
当您使用传统的 API 时,应实现以下接口以便接收更改的通知到文本缓冲区的。 公开接口在文本缓冲区使用文本缓冲区的 IConnectionPointContainer 接口接收行更改的通知从此缓冲区中。 有关更多信息,请参见 如何:文本缓冲区注册事件与传统 API。 在 IVsTextStreamEvents 或 IVsTextLinesEvents 接口,更改返回在一个或二维坐标上,分别。
文本缓冲区接口
以下文本缓冲区对象实现的接口。
接口 |
说明 |
---|---|
启用复合事件的创建 (即在单个分组操作撤消/重做单位)。 |
|
启用持久性文档文本缓冲区管理的数据。 |
|
提供基本服务;使用由许多客户端。 |
|
使用二维坐标,提供读写功能。 继承自 IVsTextBuffer。 |
|
提供更快的,面向流,对文本进行顺序访问缓冲区。 |
|
使用一维坐标,提供读写功能。 继承自 IVsTextBuffer。 |
|
提供对属性的泛型集合。 最重要的属性是名称或标记,缓冲区。 您使用此接口的缓冲区可以存储拥有随机数据通过创建 GUID 并将其用作键。 |
|
支持事件连接点。 |
text 缓冲事件接口
以下文本缓冲区事件通知的接口。
接口 |
说明 |
---|---|
,在新语言服务与文本缓冲区时,将通知客户端。 |
|
通知客户端,当文本缓冲区初始化时,因此,当对数据在文本缓冲区中。 |
|
更改通知的客户端基础文本缓冲区中的一维坐标上。 |
|
更改通知的客户端基础文本缓冲区中的二维坐标上。 |
|
更改通知的客户端用户的数据。 |
|
通知的最后使用自定义笔势触发事件并提供更改的文本范围。 IVsPreliminaryTextChangeCommitEvents 接口不会激发响应撤消或重做命令。 事件仅有一个取消管理器的缓冲区进行激发。 ,在提交更改之前,IVsPreliminaryTextChangeCommitEvents 在其他事件之前引发,例如相当列表,以确定其他事件不修改该文本。 VSPackage 必须监视 IVsPreliminaryTextChangeCommitEvents 接口或接口, IVsFinalTextChangeCommitEvents ,但不能同时包含二者。 |
|
通知的最后使用自定义笔势触发事件并提供更改的文本范围。 IVsFinalTextChangeCommitEvents 接口不会激发响应撤消或重做命令。 事件仅有一个取消管理器的缓冲区进行激发。 IVsFinalTextChangeCommitEvents 仅供使用。对编辑的整个控件的语言服务或其他对象。 VSPackage 必须监视 IVsPreliminaryTextChangeCommitEvents 接口或接口, IVsFinalTextChangeCommitEvents ,但不能同时包含二者。 |