Freezable.CloneCurrentValueCore(Freezable) Methode

Definition

Macht die Instanz zu einem modifizierbaren Klon (deep copy) des angegebenen Freezable Werts mit aktuellen Eigenschaftswerten.

protected:
 virtual void CloneCurrentValueCore(System::Windows::Freezable ^ sourceFreezable);
protected virtual void CloneCurrentValueCore(System.Windows.Freezable sourceFreezable);
abstract member CloneCurrentValueCore : System.Windows.Freezable -> unit
override this.CloneCurrentValueCore : System.Windows.Freezable -> unit
Protected Overridable Sub CloneCurrentValueCore (sourceFreezable As Freezable)

Parameter

sourceFreezable
Freezable

Der Freezable zu klonende.

Hinweise

Diese Methode wird von der CloneCurrentValue Methode aufgerufen und sollte nicht direkt aus Dem Code aufgerufen werden, außer beim Aufrufen der Basisimplementierung beim Überschreiben dieser Methode. Um eine modifizierbare Kopie des aktuellen Objekts zu erstellen, rufen Sie diese CloneCurrentValue Methode nicht direkt auf.

Hinweise für Vererber

Wenn Sie von Freezabledieser abgeleitet werden, müssen Sie diese Methode möglicherweise überschreiben. Gründe für die Außerkraftsetzung sind:

  • Ihre abgeleitete Klasse verfügt über Daten, die nicht über Abhängigkeitseigenschaften verfügbar gemacht werden.

  • Die abgeleitete Klasse muss zusätzliche Initialisierungsaufgaben ausführen, die nicht durch einfaches Überschreiben CreateInstanceCore()erreicht werden können. Dies gilt beispielsweise, wenn die abgeleitete ISupportInitializeKlasse implementiert wird.

Klassen, die alle ihre Daten in Abhängigkeitseigenschaften speichern und die keine zusätzliche Initialisierung ausführen müssen, müssen nicht überschreiben CloneCurrentValueCore(Freezable).

Es ist wichtig, dass alle Implementierungen die Basisimplementierung dieser Methode aufrufen. Implementierungen sollten nur Arbeiten ausführen, die nicht von der Standardimplementierung ausgeführt werden. Die Standardimplementierung erstellt tiefe Kopien aller schreibbaren, lokal festgelegten Eigenschaften. Wenn das Objekt Abhängigkeitseigenschaften mit Ausdrücken enthält (z. B. eine Datenbindung), wird der aktuelle Wert des Ausdrucks kopiert, aber nicht der Ausdruck selbst.

Wenn das Objekt animierte Abhängigkeitseigenschaften aufweist, wird der aktuelle animierte Wert dieser Eigenschaften kopiert, aber die Animationen sind nicht.

Beachten Sie, dass nicht festgelegte Eigenschaften nicht kopiert werden oder schreibgeschützte Eigenschaften sind. Wenn eine solche Eigenschaft einen Standardwert aufweist, der eingefroren ist, bleibt dieser Eigenschaftswert im andernfalls modifizierbaren Klon eingefroren Freezable.

In der folgenden Liste wird das erwartete Verhalten für diese Methode zusammengefasst.

  • Die erstellte Kopie enthält Kopien aller Freezable Unterobjekte.

  • Nicht festgelegte und schreibgeschützte Eigenschaften werden nicht kopiert.

  • Wenn eine Eigenschaft animiert wird, wird der aktuelle Wert kopiert, die Animation selbst jedoch nicht.

  • Keiner dieser Unterobjekte wird beim Erstellen fixiert.

  • Die Kopie selbst ist nicht fixiert.

Gilt für:

Weitere Informationen