Partager via


ITextBuffer Interface

Definition

A mutable sequence of Unicode characters encoded using UTF-16. Positions within the buffer are treated as a sequence of characters (starting at character zero) or as a sequence of lines (starting at line zero). An empty buffer has a single line containing no characters.

public interface class ITextBuffer : Microsoft::VisualStudio::Utilities::IPropertyOwner
public interface class ITextBuffer : Microsoft::VisualStudio::Utilities::IPropertyOwner
__interface ITextBuffer : Microsoft::VisualStudio::Utilities::IPropertyOwner
public interface ITextBuffer : Microsoft.VisualStudio.Utilities.IPropertyOwner
type ITextBuffer = interface
    interface IPropertyOwner
Public Interface ITextBuffer
Implements IPropertyOwner
Derived
Implements

Remarks

For more information about text buffers, see the section "A Closer Look at the Text Model and the Text View" in Inside the Editor.

Positions in this buffer are treated as a sequence of characters (starting at character zero), or as a sequence of lines (starting at line zero). An empty buffer has a single line containing no characters.

Properties

ContentType

Gets the content type of the text in the buffer.

CurrentSnapshot

Gets the current content of the buffer.

EditInProgress

Determines whether an edit operation is currently in progress on the ITextBuffer.

Properties

The collection of properties controlled by the property owner.

(Inherited from IPropertyOwner)

Methods

ChangeContentType(IContentType, Object)

Changes the IContentType for this ITextBuffer.

CheckEditAccess()

Determines whether edit operations on this text buffer are permitted on the calling thread. If TakeThreadOwnership() has previously been called, edit operations are permitted only from the same thread that made that call.

CreateEdit()

Creates an ITextEdit object that handles compound edit operations on this buffer.

CreateEdit(EditOptions, Nullable<Int32>, Object)

Creates an ITextEdit object that handles compound edit operations on this buffer.

CreateReadOnlyRegionEdit()

Creates an IReadOnlyRegionEdit object that handles adding or removing read-only regions from this buffer.

Delete(Span)

Deletes a sequence of characters from the buffer.

GetReadOnlyExtents(Span)

Gets a list of read-only regions that overlap the given span.

Insert(Int32, String)

Inserts the given textat the specified positionin the ITextBuffer.

IsReadOnly(Int32, Boolean)

Determines whether a text insertion would be prohibited at position due to an IReadOnlyRegion.

IsReadOnly(Int32)

Determines whether a text insertion would be prohibited at position due to an IReadOnlyRegion.

IsReadOnly(Span, Boolean)

Determines whether a text modification or deletion would be prohibited at span due to an IReadOnlyRegion

IsReadOnly(Span)

Determines whether a text modification or deletion would be prohibited at span due to an IReadOnlyRegion

Replace(Span, String)

Replaces a sequence of characters with different text. This is equivalent to first deleting the text to be replaced and then inserting the new text.

TakeThreadOwnership()

Claims ownership of this buffer for the current thread. All subsequent modifications of this ITextBuffer must be made from the current thread, or else an InvalidOperationException will be raised.

Events

Changed

Occurs when a non-empty ITextEdit is successfully applied.

ChangedHighPriority

Occurs when a non-empty ITextEdit is successfully applied.

ChangedLowPriority

Occurs when a non-empty ITextEdit is successfully applied.

Changing

Occurs just before a non-empty ITextEdit is applied.

ContentTypeChanged

Occurs whenever the IContentType has been changed.

PostChanged

Occurs after the Changed event and any resulting edits.

ReadOnlyRegionsChanged

Occurs when an IReadOnlyRegionEdit has created or removed read-only regions.

Applies to