Condividi tramite


Eventi del buffer di testo nell'API legacy

L'oggetto del buffer di testo genera vari eventi che consentono di rispondere alle diverse situazioni.

Quando si utilizza le API legacy, è necessario implementare le interfacce seguenti per ricevere la notifica delle modifiche al buffer di testo. Esporre le interfacce al buffer di testo tramite l'interfaccia di IConnectionPointContainer nel buffer di testo per ricevere la notifica delle modifiche di riga del buffer. Per ulteriori informazioni, vedere Procedura: Registrazione di eventi del buffer di testo con le API legacy. Nel caso di IVsTextStreamEvents o interfacce di IVsTextLinesEvents , le modifiche vengono restituite in una o coordinate bidimensionale, rispettivamente.

Interfacce del buffer di testo

Segue le interfacce implementate dall'oggetto del buffer di testo.

Interfaccia

Descrizione

IVsCompoundAction

Abilita la creazione delle azioni composte ovvero azioni che sono raggruppate in una singola unità annulla/ripristina di annullamento).

IVsPersistDocData

Abilita la persistenza dei dati del documento gestiti dal buffer di testo.

IVsTextBuffer

Fornisce servizi di base; utilizzato da più client.

IVsTextLines

Fornisce leggono e scrivono le funzionalità utilizzando le coordinate bidimensionali. Eredita da IVsTextBuffer.

IVsTextScanner

Fornisce velocemente, orientato al flusso, un accesso sequenziale al testo nel buffer.

IVsTextStream

Fornisce leggono e scrivono le funzionalità utilizzando le coordinate unidimensionali. Eredita da IVsTextBuffer.

IVsUserData

Fornisce l'accesso a una raccolta generica di proprietà. La proprietà più importante è il nome, o moniker, del buffer. È possibile archiviare diventi proprietaria di dati casuali nel buffer con questa interfaccia creando un GUID e utilizzando come chiave.

IConnectionPointContainer

supporta i punti di connessione per gli eventi.

Interfacce eventi del buffer di testo

Segue le interfacce per la notifica degli eventi del buffer di testo.

Interfaccia

Descrizione

IVsTextBufferEvents

Notifica ai client quando un nuovo servizio di linguaggio è associato a un buffer di testo.

IVsTextBufferDataEvents

Notifica ai client quando un buffer di testo viene inizializzato e quando vengono apportate modifiche ai dati nel buffer di testo.

IVsTextStreamEvents

Notifica ai client delle modifiche al buffer di testo sottostante nelle coordinate unidimensionali.

IVsTextLinesEvents

Notifica ai client delle modifiche al buffer di testo sottostante nelle coordinate bidimensionali.

IVsUserDataEvents

Notifica ai client delle modifiche ai dati utente.

IVsPreliminaryTextChangeCommitEvents

Notifica ai client dell'ultimo spostamento di commit per attivare l'evento e fornisce l'intervallo di testo modificato. L'interfaccia di IVsPreliminaryTextChangeCommitEvents non viene generata in risposta ai controlli di annullamento o ripristino. Gli eventi vengono generati solo per i buffer con un amministratore di annullamento. IVsPreliminaryTextChangeCommitEvents viene generato prima di altri eventi, come elenco la riformattazione del listato, per garantire gli altri eventi non modifica il testo prima di applicare le modifiche. Il package VS deve monitorare l'interfaccia di IVsPreliminaryTextChangeCommitEvents o l'interfaccia di IVsFinalTextChangeCommitEvents , ma non entrambe.

IVsFinalTextChangeCommitEvents

Notifica ai client dell'ultimo spostamento di commit per attivare l'evento e fornisce l'intervallo di testo modificato. L'interfaccia di IVsFinalTextChangeCommitEvents non viene generata in risposta ai controlli di annullamento o ripristino. Gli eventi vengono generati solo per i buffer con un amministratore di annullamento. IVsFinalTextChangeCommitEvents deve essere utilizzata solo dai servizi di linguaggio o da altri oggetti che dispongono di controllo completo della modifica. Il package VS deve monitorare l'interfaccia di IVsPreliminaryTextChangeCommitEvents o l'interfaccia di IVsFinalTextChangeCommitEvents , ma non entrambe.

Vedere anche

Attività

Procedura: Registrazione di eventi del buffer di testo con le API legacy

Concetti

Accedere al buffer di testo tramite le API legacy