UndoEngine Klasse

Definition

Gibt die generische Funktion zum Rückgängigmachen/Wiederholen zur Entwurfszeit an.

public ref class UndoEngine abstract : IDisposable
public abstract class UndoEngine : IDisposable
type UndoEngine = class
    interface IDisposable
Public MustInherit Class UndoEngine
Implements IDisposable
Vererbung
UndoEngine
Implementiert

Hinweise

Die UndoEngine abstrakte Klasse stellt zur Entwurfszeit eine Standardimplementierung von Rückgängig-Funktionen bereit. Eine Rückgängig-Einheit stellt eine einzelne Einheit rückgängiger Arbeit dar. Diese Einheit wird einem Stapel hinzugefügt, und der Benutzer kann dann den Stapel durchlaufen, um jede Aktion rückgängig zu machen. Rückgängig-Einheiten sind in der Regel so konzipiert, dass ein Umschalter erfolgt, d. h., dass das Aufrufen von "Rückgängig" zweimal die Anwendung in den Startzustand zurückgibt.

Die UndoEngine Klasse nutzt die folgenden Merkmale von Objekten, die im Designer ausgeführt werden:

  • Alle interessanten Objekte können vom Designerladeprogramm auf ein bestimmtes Format beibehalten werden.

  • Alle Objekte lösen Eigenschaftsänderungsbenachrichtigungen aus, wenn eine Eigenschaft geändert wird.

  • IDesignerHost bietet die Idee von Transaktionen, die verwendet werden können, um eine Rückgängig-Aktion zu erstellen, die mehrere kleinere Aktionen umfasst.

Mit diesen Features UndoEngine können Sie alle benötigten Rückgängig-Einheiten automatisch erstellen.

Note

Ändern Sie Eigenschaftswerte nicht direkt. Die UndoEngine Klasse erfordert, dass Sie zum Ändern von Eigenschaftswerten die entsprechenden TypeDescriptor Werte verwenden.

UndoEngine überwacht Änderungsbenachrichtigungen, um Rückgängig-Einheiten zu erstellen, und die Einheiten selbst bestehen aus serialisierten Objektzuständen. In der folgenden Tabelle sind die Dienste aufgeführt, die beim UndoEngine Erstellen verfügbar sein müssen.

Service Description
ComponentSerializationService Speichert Eigenschafts- und Objektwerte für eine Komponente vor und nach einer Änderung.
IComponentChangeService Benachrichtigt das Rückgängig-Modul über Änderungen, die an Komponenten vorgenommen wurden.
IDesignerHost Wird zum Nachverfolgen von Transaktionen verwendet.

Note

Da die UndoEngine Klasse benötigt ComponentSerializationService und IComponentChangeService, ist sie nur zur Entwurfszeit verfügbar.

Das Rückgängig-Modul verfolgt Transaktionen und erstellt eine einzelne Rückgängig-Einheit, die eine Transaktion umfasst. Daher hat das Rückgängig-Modul die Kontrolle über die Dauer einer rückgängigmachenden Aktion. Da Transaktionen benannt werden können, erben rückgängigmachende Aktionen ihre Namen von der aktuellen Transaktion. Wenn keine Transaktion verfügbar ist und eine Änderung gemeldet wird, erstellt das Rückgängig-Modul basierend auf dem Änderungstyp einen Rückgängig-Namen (z. B. "Eigenschaft ändern 'Text'").

Konstruktoren

Name Beschreibung
UndoEngine(IServiceProvider)

Initialisiert eine neue Instanz der UndoEngine-Klasse.

Eigenschaften

Name Beschreibung
Enabled

Aktiviert oder deaktiviert die UndoEngine.

UndoInProgress

Gibt an, ob eine Rückgängig-Aktion ausgeführt wird.

Methoden

Name Beschreibung
AddUndoUnit(UndoEngine+UndoUnit)

Fügt dem Rückgängig-Stapel einen UndoEngine.UndoUnit Hinzufügt.

CreateUndoUnit(String, Boolean)

Erstellt ein neues UndoEngine.UndoUnit.

DiscardUndoUnit(UndoEngine+UndoUnit)

Verwirft ein UndoEngine.UndoUnit.

Dispose()

Veröffentlicht alle ressourcen, die von der UndoEngine.

Dispose(Boolean)

Gibt die nicht verwalteten Ressourcen frei, die von den UndoEngine verwalteten Ressourcen verwendet werden, und gibt optional die verwalteten Ressourcen frei.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetRequiredService(Type)

Ruft den angeforderten Dienst ab.

GetService(Type)

Ruft den angeforderten Dienst ab.

GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
OnUndoing(EventArgs)

Löst das Undoing-Ereignis aus.

OnUndone(EventArgs)

Löst das Undone-Ereignis aus.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Ereignisse

Name Beschreibung
Undoing

Tritt unmittelbar vor der Ausführung einer Rückgängig-Aktion auf.

Undone

Tritt unmittelbar nach ausführung einer Rückgängig-Aktion auf.

Gilt für:

Weitere Informationen