共用方式為


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。

ArgumentOutOfRangeException

position小於零或大於 span 的數目。

-或-

spansToReplace小於零或position + spansToReplace大於 span 的數目。

ArgumentException

項目spansToInsert既不是ITrackingSpan或字串。

-或-

範圍,在spansToInsert可能會造成重複的投影。

-或-

追蹤之內,在spansToInsert是EdgeInclusive並不涵蓋其整個緩衝區中,或者是EdgePositive並不相鄰的結尾它的緩衝區,或者是EdgeNegative並不相鄰的緩衝區的開頭。

(如果投影緩衝區用來建立不執行這些檢查PermissiveEdgeInclusiveSourceSpans。)

-或-

新增文字緩衝區,包含的其中一個spansToInsert會建立一組投影緩衝區之間循環。

.NET Framework 安全性

請參閱

參考

IProjectionBuffer 介面

Microsoft.VisualStudio.Text.Projection 命名空間