Freigeben über


IVsFinalTextChangeCommitEvents-Schnittstelle

Benachrichtigt Clients über der letzten Commit geste, um das Ereignis auszulösen und stellt den Textbereich geändert.

Namespace:  Microsoft.VisualStudio.TextManager.Interop
Assembly:  Microsoft.VisualStudio.TextManager.Interop (in Microsoft.VisualStudio.TextManager.Interop.dll)

Syntax

'Declaration
<InterfaceTypeAttribute()> _
<GuidAttribute("CE62717C-797D-445F-BC89-1D02C54CCF96")> _
Public Interface IVsFinalTextChangeCommitEvents
[InterfaceTypeAttribute()]
[GuidAttribute("CE62717C-797D-445F-BC89-1D02C54CCF96")]
public interface IVsFinalTextChangeCommitEvents
[InterfaceTypeAttribute()]
[GuidAttribute(L"CE62717C-797D-445F-BC89-1D02C54CCF96")]
public interface class IVsFinalTextChangeCommitEvents
[<InterfaceTypeAttribute()>]
[<GuidAttribute("CE62717C-797D-445F-BC89-1D02C54CCF96")>]
type IVsFinalTextChangeCommitEvents =  interface end
public interface IVsFinalTextChangeCommitEvents

Der IVsFinalTextChangeCommitEvents-Typ macht die folgenden Member verfügbar.

Methoden

  Name Beschreibung
Öffentliche Methode OnChangesCommitted Benachrichtigt Clients über der letzten Commit geste, um das Ereignis auszulösen und den Textbereich bereitstellt geändert.

Zum Seitenanfang

Hinweise

Sprachendienste oder andere Seiten, die gesamte Steuerelement zum Bearbeiten der Darstellung haben, ist der einzige Client beabsichtigte dieser Schnittstelle.

Zusammengesetzte Aktionen sind Aktionen, die in einem einzelnen Rückgängig/Wiederholen Einheit zusammengefasst werden. Wenn der Editor oder einem Editor client (z. B. Sprachdienst) eine zusammengesetzte fungiert erstellen möchte, ruft sie OpenCompoundAction und CloseCompoundAction um diese Aufrufe an Text bearbeiten können. Jede zusammengesetzte fungiert enthält, die Anwendungsstiftbewegungen Commit für die Umgebung erforderlich wäre, ein Commit für jedes Ereignis auszulösen. Allerdings für eine zusammengesetzte fungiert, löst die Umgebung lediglich ein Commit ausgeführt wird. Dieses Ereignis wird auf der höchsten Priorität Commit oder geste auf der letzten Commit geste ausgelöst. Zum Beispiel für die Verwendung Find und Ersetzen, ersetzt ein Benutzer sechs Textabschnitte sofort. Jeder dieser Ersetzungen ist möglicherweise ein Commit geste, aber da es sich um eine zusammengesetzte Sicherheitsaktion ist, wartet die Umgebung bis zum Ende des FindErsetzen und ein einzelnes Vorgangs zum Aufrufen von OnChangesCommitted Commits für Auswahlereignisse durch einen Wert übergeben und von CCG_MASS_REPLACE für den Parameter dwGestureFlags auszulösen.

IVsFinalTextChangeCommitEvents ist für Sprachendienste oder andere Objekte nur vorgesehen, die vollständige Kontrolle über bearbeiten. Er wird nicht als Antwort auf Rückgängig oder Wiederholen Befehle, aber nur für Feuer Puffer ausgelöst, die einen Rückgängig Manager haben. Mithilfe von IVsFinalTextChangeCommitEvents implementiert, erhält die Sprache Benachrichtigung, wenn der Benutzer bestimmte commitfähige Aktionen ausführt. Weitere Informationen finden Sie unter ChangeCommitGestureFlags. Als Reaktion auf diese Aktionen kann die Sprache, welche Aktionen sie benötigt werden, z Neuformatierung von Text ausführen, der möglicherweise eingefügt. Im Allgemeinen Diese Aktionen können nicht rückgängig gemacht werden, wenn die Textänderung rückgängig gemacht wird, weil in den meisten Fällen den Rückgängig betreffende Text entfernt. Aus diesem Grund ist das Commit ausgeführt wird Rückgängig/Wiederholenzu System reagiert nicht. Clients, die auch Rückgängig/Wiederholen-Ereignisse verfolgen möchten, können die vom Rückgängig Cluster von Ereignissen Manager verwenden.

IVsPreliminaryTextChangeCommitEvents ist mit IVsFinalTextChangeCommitEventssehr ähnlich. Der einzige Unterschied besteht darin, dass IVsPreliminaryTextChangeCommitEvents ausgelöst und von der Umgebung vor IVsFinalTextChangeCommitEvents vor anderen Ereignissen abgerufen werden, wie Auswahl neu formatieren. Dies ist erforderlich, um sicherzustellen, dass der Text im Puffer beschädigtes nicht vor dem Aufrufen von IVsPreliminaryTextChangeCommitEventsabruft. Sie können entweder IVsFinalTextChangeCommitEvents oder IVsPreliminaryTextChangeCommitEvents, jedoch nicht beides implementieren.

Hinweise zur Implementierung

Implementieren Sie IVsFinalTextChangeCommitEvents auf dem Clientobjekt, um Benachrichtigungen über Änderungen am Textpuffer, VsTextBufferzu empfangen. Legen Sie diese Schnittstelle im Textpuffer mithilfe der IConnectionPointContainer-Schnittstelle im Textpuffer Objekt VsTextBuffer aus. Weitere Informationen finden Sie unter Gewusst wie: Register für Text-Puffer-Ereignisse mit dem Legacy API

Siehe auch

Referenz

Microsoft.VisualStudio.TextManager.Interop-Namespace