使用传统的 API 访问的文本层

文本层通常封装文本格式的某些方面。 例如, “功能时间”层隐藏文本在包含插入符号的功能之前或之后 (文本插入点)。

文本层位于缓冲区和视图之间,,并修改视图查看缓冲区的内容的方式。

text 层信息

下面的列表描述文本层如何在 Visual Studio工作:

  • 在文本层的文本可使用语法着色和标记修饰。

  • 您当前不能实现拥有层。

  • 层显示 IVsTextLayer,从 IVsTextLines派生。 文本缓冲区也实现为层,可以查看过程 polymorphically 基础层。

  • 任意数量的层可以放在视图和缓冲区。 每个层仅处理层在其下,因此,视图主进程中最顶层的层。 (该视图具有有关缓冲的某些信息。)

  • 层会影响其下方仅层。 它不会影响上来的层在给定标准事件外。

  • 在编辑器中,隐藏文本、聚合文本和换行实现为层。 可以实现隐藏的和复合文本,但不适合直接与层。 有关更多信息,请参见概述 (托管包结构)IVsSyntheticTextSession

  • 每个文本层可通过 IVsTextLayer 接口公开自己的本地坐标系统。 ,当基础文本缓冲区可能只包含一行时,换行层,例如,可能包含两行。

  • 视图传递至层。 IVsLayeredTextView 接口。 使用此接口协调项缓冲区坐标的视图坐标。

  • 任何层例如给定文本的复合文本层必须提供 CreateTrackingPoint的一个本地实现。

  • 除了 IVsTextLayer外,文本层必须实现 IConnectionPointContainer 和激发在 IVsTextLinesEvents 接口的事件。

请参见

概念

在自定义编辑器的语法着色

其他资源

使用是传统 API 的文本标记

自定义编辑控件和菜单使用传统的 API