IProjectionBuffer 接口

一个包含其他文本缓冲区的投影的文本缓冲区,该文本缓冲区由这些缓冲区的跟踪范围列表组成。 构成投影缓冲区的缓冲区称为源缓冲区,描述构成区域的跟踪范围称为源范围。

命名空间:  Microsoft.VisualStudio.Text.Projection
程序集:  Microsoft.VisualStudio.Text.Data(在 Microsoft.VisualStudio.Text.Data.dll 中)

语法

声明
Public Interface IProjectionBuffer _
    Inherits IProjectionBufferBase, ITextBuffer, IPropertyOwner
public interface IProjectionBuffer : IProjectionBufferBase, 
    ITextBuffer, IPropertyOwner
public interface class IProjectionBuffer : IProjectionBufferBase, 
    ITextBuffer, IPropertyOwner
type IProjectionBuffer =  
    interface 
        interface IProjectionBufferBase 
        interface ITextBuffer 
        interface IPropertyOwner 
    end
public interface IProjectionBuffer extends IProjectionBufferBase, ITextBuffer, IPropertyOwner

IProjectionBuffer 类型公开以下成员。

属性

  名称 说明
公共属性 ContentType 获取缓冲区中的文本内容类型。 (继承自 ITextBuffer。)
公共属性 CurrentSnapshot 获取投影缓冲区的内容的当前快照。 (继承自 IProjectionBufferBase。)
公共属性 EditInProgress 确定当前是否正在对 ITextBuffer 执行编辑操作。 (继承自 ITextBuffer。)
公共属性 Properties 获取属性所有者控制的属性集合。 (继承自 IPropertyOwner。)
公共属性 SourceBuffers 获取直接设置构成投影缓冲区的 ITextBuffer 对象。 (继承自 IProjectionBufferBase。)

页首

方法

  名称 说明
公共方法 ChangeContentType 更改此 ITextBufferIContentType。 (继承自 ITextBuffer。)
公共方法 CheckEditAccess 确定调用线程中是否允许此文本缓冲区的编辑操作。 (继承自 ITextBuffer。)
公共方法 CreateEdit() 创建一个在此缓冲区上处理复合编辑操作的 ITextEdit 对象。 (继承自 ITextBuffer。)
公共方法 CreateEdit(EditOptions, Nullable<Int32>, Object) 创建一个在此缓冲区上处理复合编辑操作的 ITextEdit 对象。 (继承自 ITextBuffer。)
公共方法 CreateReadOnlyRegionEdit 创建一个 IReadOnlyRegionEdit 对象,用于处理此缓冲区中只读区域的添加或移除操作。 (继承自 ITextBuffer。)
公共方法 Delete 从缓冲区中删除字符范围。 (继承自 IProjectionBufferBase。)
公共方法 DeleteSpans 从投影缓冲区中删除源范围序列。
公共方法 GetReadOnlyExtents 获取与给定范围重叠的只读区域的列表。 (继承自 ITextBuffer。)
公共方法 Insert 插入指定的文本在 ITextBuffer的指定位置。 (继承自 IProjectionBufferBase。)
公共方法 InsertSpan(Int32, ITrackingSpan) 在源范围列表中插入跟踪范围。
公共方法 InsertSpan(Int32, String) 一个文本字符串到源范围列表中插入。
公共方法 InsertSpans ITrackingSpan 对象和/或字符串在列表中的顺序在源范围列表中插入此列表。
公共方法 IsReadOnly(Int32) 确定在插入文本是否禁止在指定的位置由于 IReadOnlyRegion。 (继承自 ITextBuffer。)
公共方法 IsReadOnly(Span) 确定是否因为 IReadOnlyRegion 而禁止在 span 修改或删除文本。 (继承自 ITextBuffer。)
公共方法 IsReadOnly(Int32, Boolean) 确定在插入文本是否禁止在指定的位置由于 IReadOnlyRegion。 (继承自 ITextBuffer。)
公共方法 IsReadOnly(Span, Boolean) 确定是否因为 IReadOnlyRegion 而禁止在 span 修改或删除文本。 (继承自 ITextBuffer。)
公共方法 Replace 用不同文本替换字符范围。此方法等效于先删除要替换的文本,再插入新文本。 (继承自 IProjectionBufferBase。)
公共方法 ReplaceSpans 将源范围序列替换为 ITrackingSpan 对象和/或字符串的新列表。
公共方法 TakeThreadOwnership 声明当前线程对此缓冲区的所有权。对此 ITextBuffer 的所有后续修改都必须从当前线程中进行,否则将引发 InvalidOperationException。 (继承自 ITextBuffer。)

页首

事件

  名称 说明
公共事件 Changed 当成功应用非空 ITextEdit 时发生。 (继承自 ITextBuffer。)
公共事件 ChangedHighPriority 当成功应用非空 ITextEdit 时发生。 (继承自 ITextBuffer。)
公共事件 ChangedLowPriority 当成功应用非空 ITextEdit 时发生。 (继承自 ITextBuffer。)
公共事件 Changing 正好在应用非空 ITextEdit 之前发生。 (继承自 ITextBuffer。)
公共事件 ContentTypeChanged 每当已更改 IContentType 时发生。 (继承自 ITextBuffer。)
公共事件 PostChanged Changed 事件之后发生,其中任何编辑。 (继承自 ITextBuffer。)
公共事件 ReadOnlyRegionsChanged IReadOnlyRegionEdit 已创建或移除只读区域时发生。 (继承自 ITextBuffer。)
公共事件 SourceBuffersChanged 当通过添加或删除源范围来添加或删除源缓冲区时引发。此事件在引发 SourceSpansChanged 事件之前引发。
公共事件 SourceSpansChanged 当添加或删除源范围时引发。

页首

备注

有关投影的更多信息,请参见一节 “投影”。 在编辑器内

请参阅

参考

Microsoft.VisualStudio.Text.Projection 命名空间