Freigeben über


Durch die Angabe zum Rückgängigmachen Unterstützung für Designer

Designer, z. B. Editoren, müssen in der Regel Rückgängig-Vorgänge unterstützen, sodass die Benutzer ihre neuen Änderungen rückgängig gemacht werden können, wenn sie ein Codeelement nicht ändern.

Die meisten die in Visual Studio Designer implementiert werden, die rückgängig zu machen, die automatisch von der Umgebung unterstützt wird.

Implementierungen von Designern, die Unterstützung für die Funktion Rückgängig Berechtigung müssen:

Weitere Informationen über das Schreiben Designer, die .NET Frameworkfinden Sie unter Erweitern der Entwurfszeitunterstützung.

Visual Studio SDK stellt eine Infrastruktur zum Rückgängigmachen Standard folgendermaßen:

Das Abrufen unterstützen automatisch rückgängig

Jeder Designer, der in Visual Studio erstellt wird, verfügt die automatische und macht vollständig unterstützt, wenn der Designer:

  • Nutzt eine basierte Klasse Control für seine Benutzeroberfläche aus.

  • Setzt CodeDOM-basierte StandardCodegenerierung und Analysesystem für die Codegenerierung und Dauerhaftigkeit ein.

    Weitere Informationen zum Arbeiten mit Visual Studio-CodeDOM-Unterstützung finden Sie unter Generieren und Kompilieren von dynamischem Quellcode

Wann expliziten Designer verwendet die Unterstützung Rückgängig

Designer müssen ihre eigenen rückgängig machen die Verwaltung angeben, wenn sie eine grafische Benutzeroberfläche verwenden, so genannte ein Ansichtsadapter, anders als die, die von Controlangegeben wird.

Ein Beispiel hierfür erstellte möglicherweise ein Produkt mit einer webbasierten grafischen Entwurfstools statt einer Oberfläche .NET Framework basierte grafische Schnittstelle.

In solchen Fällen würde Verwenden dieses Ansichtsadapter mit Visual Studio mit ProvideViewAdapterAttributeregistrieren und explizites rückgängig machen müssen Verwaltung bereitstellt.

Unterstützung für Persistenz und CodeDOM Designer müssen, wenn sie nicht das Modell zur Codegenerierung Visual Studio , das im System.CodeDom-Namespace bereitgestellt wird.

Rückgängigmachen Unterstützung von Funktionen des Designers

Das Umgebungs-SDK stellt Standardimplementierungen von Schnittstellen, die benötigt werden, um bereitzustellen, macht die Unterstützung von Designern nicht mit basierter Klassen Control oder Benutzeroberflächen für ihre Standard-CodeDOM Dauerhaftigkeit sowie das Modell verwendet werden kann.

Die OleUndoEngine-Klasse leitet sich von der Klasse .NET Framework UndoEngine mit einer Implementierung der IOleUndoManager-Klasse, um Rückgängig-Vorgänge verwaltet werden.

Visual Studio erstellt die folgende Funktion Rückgängig in den Designer zur Verfügung:

  • Linked rückgängig machen Funktionen über mehrere Designern.

  • Untergeordnete Einheiten innerhalb eines Designers können mit ihren übergeordneten Elementen interagieren, indem sie IOleUndoUnit und IOleParentUndoUnit auf UndoUnitimplementieren.

Das Umgebungs-SDK bietet Unterstützung für Persistenz und CodeDOM durch das angegeben wird:

IComponentChangeService vom Entwurfshost bereitgestellt Visual Studio .

Verwenden von anzugeben Umgebungs-SDK-Funktionen Rückgängigmachen Unterstützung

Zum Abrufen Rückgängigmachen die Unterstützung, ein Objekt einen Designer implementiert, muss:

Die Designer implementieren, OleUndoEngine basiertes Mechanismus zum Rückgängigmachen von Änderungen automatisch nachverfolgt, wenn:

  • Eigenschaftenänderungen werden vom TypeDescriptor-Objekt vorgenommen.

  • IComponentChangeService-Ereignisse werden manuell erstellt, wenn eine undoable Änderung übernommen wird.

  • Die Änderung wurde auf dem Designer im Kontext DesignerTransactionerstellt.

  • Der Designer beschließt, um Rückgängigeinheiten entweder mit der standardmäßigen Rückgängigeinheit explizit zu erstellen, die von einer Implementierung von UndoUnit oder der Sicht-Studio-Besondere Implementierung UndoUnitbereitgestellt wird, die von UndoUnit berechnet und außerdem eine Implementierung von IOleUndoUnit und IOleParentUndoUnitbereitstellt.

Siehe auch

Referenz

UndoEngine

OleUndoEngine

Weitere Ressourcen

Erweitern der Entwurfszeitunterstützung