UndoEngine UndoEngine UndoEngine UndoEngine Class

Definition

Gibt den generischen Rückgängig/Wiederholen-Funktionalität zur Entwurfszeit an.Specifies generic undo/redo functionality at design time.

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

Hinweise

Die UndoEngine abstrakte Klasse stellt eine Standardimplementierung der Rückgängig-Funktion zur Entwurfszeit bereit.The UndoEngine abstract class provides a default implementation of undo functionality at design time. Eine Rückgängig-Komponente stellt eine Arbeitseinheit rückgängig gemacht werden kann.An undo unit represents a single unit of undoable work. Diese Einheit wird auf einen Stapel hinzugefügt, und der Benutzer kann dann Schritt für Schritt den Stapel, um jede Aktion rückgängig zu machen.This unit is added to a stack and the user can then walk the stack to undo each action. Rückgängig-Komponenten in der Regel dienen zum ein-oder auszuschalten, was bedeutet, dass dieser Aufruf zum Rückgängigmachen zweimal von der Anwendung, mit dessen anfänglichem Zustand zurückgegeben.Undo units typically are designed to toggle, which means that calling undo twice returns the application to its starting state.

Die UndoEngine -Klasse nutzt die folgenden Eigenschaften von Objekten, die im Designer ausgeführt wird:The UndoEngine class takes advantage of the following characteristics of objects running within the designer:

  • Alle relevanten Objekte können in einem Format vom Designerladeprogramm gespeichert werden.All interesting objects can be persisted to some format by the designer loader.

  • Alle Objekte lösen eigenschaftsänderungen-Benachrichtigungen, wenn eine Eigenschaft geändert wird.All objects raise property-change notifications when a property is changed.

  • IDesignerHost Stellt das Konzept der Transaktionen, die verwendet werden können, um eine Rückgängig-Aktion zu erstellen, die mehrere kleinere Aktionen umfasst.IDesignerHost offers the idea of transactions, which can be used to fabricate an undo action that spans multiple smaller actions.

Mit diesen Features UndoEngine können alle Rückgängig-Komponenten automatisch erstellt.With these features, UndoEngine can fabricate any undo units it needs automatically.

Hinweis

Ändern Sie Eigenschaftswerte nicht direkt auf.Do not change property values directly. Die UndoEngine Klasse müssen Sie die entsprechende TypeDescriptor um Eigenschaftswerte zu ändern.The UndoEngine class requires you to use the appropriate TypeDescriptor to change property values.

UndoEngine Monitore für zum Erstellen von änderungsbenachrichtigungen Rückgängig-Komponenten, und die Einheiten selbst bestehen, der Status des serialisierten Objekts.UndoEngine monitors for change notifications to create undo units, and the units themselves consist of serialized object states. Die folgende Tabelle zeigt die Dienste, die verfügbar, wenn sein müssen UndoEngine erstellt wird.The following table shows the services that must be available when UndoEngine is created.

DienstService BeschreibungDescription
ComponentSerializationService Eigenschaften- und Objektwerte für eine Komponente speichert, bevor und nachdem eine Änderung vorgenommen wird.Saves property and object values for a component before and after a change is made.
IComponentChangeService Benachrichtigt die rückgängig-Engine von Änderungen an der Komponenten.Notifies the undo engine of changes made to components.
IDesignerHost Zum Nachverfolgen von Transaktionen verwendet.Used to track transactions.

Hinweis

Da die UndoEngine Klasse erfordert ComponentSerializationService und IComponentChangeService, es ist nur zur Entwurfszeit verfügbar.Because the UndoEngine class requires ComponentSerializationService and IComponentChangeService, it is available only at design time.

Die rückgängig-Engine verfolgt Transaktionen und erstellt eine einzelne Rückgängig-Einheit, die eine Transaktion umfasst.The undo engine tracks transactions and creates a single undo unit that encompasses a transaction. Die rückgängig-Engine hat daher Kontrolle über die Dauer der Aktion rückgängig zu machen.As a result, the undo engine has control over the duration of an undoable action. Da Transaktionen benannt werden können, erben rückgängig zu machende Aktionen ihre Namen aus der aktuellen Transaktion.Also, because transactions can be named, undoable actions inherit their names from the current transaction. Wenn keine Transaktion verfügbar ist, und eine Änderung gemeldet wurde, erstellt die rückgängig-Engine einen Rückgängignamen, die basierend auf den Typ der Änderung (z. B. "Change Property 'Text'").If no transaction is available and a change is reported, the undo engine creates an undo name based on the type of change (for example, "Change property 'Text'").

Konstruktoren

UndoEngine(IServiceProvider) UndoEngine(IServiceProvider) UndoEngine(IServiceProvider) UndoEngine(IServiceProvider)

Initialisiert eine neue Instanz der UndoEngine-Klasse.Initializes a new instance of the UndoEngine class.

Eigenschaften

Enabled Enabled Enabled Enabled

Aktiviert oder deaktiviert die UndoEngine.Enables or disables the UndoEngine.

UndoInProgress UndoInProgress UndoInProgress UndoInProgress

Gibt an, ob eine Rückgängigaktion ausgeführt wird.Indicates if an undo action is in progress.

Methoden

AddUndoUnit(UndoEngine+UndoUnit) AddUndoUnit(UndoEngine+UndoUnit) AddUndoUnit(UndoEngine+UndoUnit) AddUndoUnit(UndoEngine+UndoUnit)

Fügt eine UndoEngine.UndoUnit der Rückgängig-Stapel.Adds an UndoEngine.UndoUnit to the undo stack.

CreateUndoUnit(String, Boolean) CreateUndoUnit(String, Boolean) CreateUndoUnit(String, Boolean) CreateUndoUnit(String, Boolean)

Erstellt einen neuen UndoEngine.UndoUnit.Creates a new UndoEngine.UndoUnit.

DiscardUndoUnit(UndoEngine+UndoUnit) DiscardUndoUnit(UndoEngine+UndoUnit) DiscardUndoUnit(UndoEngine+UndoUnit) DiscardUndoUnit(UndoEngine+UndoUnit)

Verwirft eine UndoEngine.UndoUnit.Discards an UndoEngine.UndoUnit.

Dispose() Dispose() Dispose() Dispose()

Gibt alle vom UndoEngine verwendeten Ressourcen frei.Releases all resources used by the UndoEngine.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Gibt die von UndoEngine verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.Releases the unmanaged resources used by the UndoEngine and optionally releases the managed resources.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetRequiredService(Type) GetRequiredService(Type) GetRequiredService(Type) GetRequiredService(Type)

Ruft den angeforderten Dienst ab.Gets the requested service.

GetService(Type) GetService(Type) GetService(Type) GetService(Type)

Ruft den angeforderten Dienst ab.Gets the requested service.

GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
OnUndoing(EventArgs) OnUndoing(EventArgs) OnUndoing(EventArgs) OnUndoing(EventArgs)

Löst das Undoing-Ereignis aus.Raises the Undoing event.

OnUndone(EventArgs) OnUndone(EventArgs) OnUndone(EventArgs) OnUndone(EventArgs)

Löst das Undone-Ereignis aus.Raises the Undone event.

ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)

Ereignisse

Undoing Undoing Undoing Undoing

Tritt auf, unmittelbar bevor eine Rückgängigaktion ausgeführt wird.Occurs immediately before an undo action is performed.

Undone Undone Undone Undone

Tritt auf, sobald eine Rückgängigaktion ausgeführt wird.Occurs immediately after an undo action is performed.

Gilt für:

Siehe auch