Поделиться через


IProjectionBuffer.ReplaceSpans - метод

Заменяет последовательность исходных диапазонов новым списком объектов ITrackingSpan и строковых литералов.

Пространство имен:  Microsoft.VisualStudio.Text.Projection
Сборка:  Microsoft.VisualStudio.Text.Data (в Microsoft.VisualStudio.Text.Data.dll)

Синтаксис

'Декларация
Function ReplaceSpans ( _
    position As Integer, _
    spansToReplace As Integer, _
    spansToInsert As IList(Of Object), _
    options As EditOptions, _
    editTag As Object _
) As IProjectionSnapshot
IProjectionSnapshot ReplaceSpans(
    int position,
    int spansToReplace,
    IList<Object> spansToInsert,
    EditOptions options,
    Object editTag
)
IProjectionSnapshot^ ReplaceSpans(
    int position, 
    int spansToReplace, 
    IList<Object^>^ spansToInsert, 
    EditOptions options, 
    Object^ editTag
)
abstract ReplaceSpans : 
        position:int * 
        spansToReplace:int * 
        spansToInsert:IList<Object> * 
        options:EditOptions * 
        editTag:Object -> IProjectionSnapshot
function ReplaceSpans(
    position : int, 
    spansToReplace : int, 
    spansToInsert : IList<Object>, 
    options : EditOptions, 
    editTag : Object
) : IProjectionSnapshot

Параметры

  • position
    Тип: Int32

    Позиция, с которой начинается замена диапазонов.

  • spansToReplace
    Тип: Int32

    Количество заменяемых диапазонов.

  • spansToInsert
    Тип: IList<Object>

    Новый вставляемый диапазон.

  • editTag
    Тип: Object

    Объект, который будет связан с транзакцией изменения.

Возвращаемое значение

Тип: Microsoft.VisualStudio.Text.Projection.IProjectionSnapshot
Снимок IProjectionSnapshot.

Исключения

Исключение Условие
ArgumentNullException

spansToInsert null или диапазон в списке значение null.

ArgumentOutOfRangeException

position меньше нуля или больше, чем количество диапазонов.

-или-

spansToReplace меньше нуля или position + spansToReplace больше, чем количество диапазонов.

ArgumentException

Элемент spansToInsert ни ITrackingSpan ни строка.

-или-

Диапазон in spansToInsert вызвавшего дублированную проекцию.

-или-

Диапазон отслеживания in spansToInsert существует EdgeInclusive не охватывает весь буфер и его или EdgePositive и не упирает конца буфера или EdgeNegative и не упирает начало буфера.

(Эти проверка не выполняется, если буфер проекции был создан с помощью PermissiveEdgeInclusiveSourceSpans.)

-или-

Добавить текстовый буфер, содержащий одно из spansToInsert создание цикл по набора буферов проекции.

Безопасность платформы .NET Framework

См. также

Ссылки

IProjectionBuffer Интерфейс

Microsoft.VisualStudio.Text.Projection - пространство имен