Partager via


IProjectionBuffer.ReplaceSpans, méthode

Remplace une séquence d'étendues de sources par une nouvelle liste d'objets ITrackingSpan et/ou de chaînes littérales.

Espace de noms :  Microsoft.VisualStudio.Text.Projection
Assembly :  Microsoft.VisualStudio.Text.Data (dans Microsoft.VisualStudio.Text.Data.dll)

Syntaxe

'Déclaration
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

Paramètres

  • position
    Type : Int32

    Position à laquelle commencer à remplacer les étendues.

  • spansToReplace
    Type : Int32

    Nombre d'étendues à remplacer.

  • spansToInsert
    Type : IList<Object>

    Nouvelles étendues à insérer.

  • editTag
    Type : Object

    Objet qui sera associé à cette transaction de modification.

Valeur de retour

Type : Microsoft.VisualStudio.Text.Projection.IProjectionSnapshot
IProjectionSnapshot .

Exceptions

Exception Condition
ArgumentNullException

spansToInsert est null ou une étendue dans la liste sont null.

ArgumentOutOfRangeException

position est inférieur à zéro ou plus supérieur que le nombre d'étendues.

ou

spansToReplace est inférieur à zéro ou position + spansToReplace est plus supérieur que le nombre d'étendues.

ArgumentException

Un élément d'spansToInsert n'est ni ITrackingSpan ni une chaîne.

ou

Étendue dans une spansToInsert provoquerait une projection dupliquée.

ou

Une étendue de suivi dans spansToInsert est EdgeInclusive et n'aborde pas sa mémoire tampon entière, ou est EdgePositive et n'aboute pas la fin de sa mémoire tampon, ou est EdgeNegative et n'aboute pas le début de sa mémoire tampon.

(Ces contrôles ne sont pas exécutés si la mémoire tampon de projection était créée avec PermissiveEdgeInclusiveSourceSpans.)

ou

Ajoutant une mémoire tampon de texte contenant un d'spansToInsert créerait un cycle comprise dans un jeu de mémoires tampon de projection.

Sécurité .NET Framework

Voir aussi

Référence

IProjectionBuffer Interface

Microsoft.VisualStudio.Text.Projection, espace de noms