Teilen über


Freezable.GetAsFrozenCore(Freezable) Methode

Definition

Definiert die Instanz als fixierten Klon des angegebenen Freezable-Elements, indem Basiseigenschaftenwerte (nicht animiert) verwendet werden.

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

Parameter

sourceFreezable
Freezable

Die zu kopierende Instanz.

Hinweise

Diese Methode wird von der GetAsFrozen -Methode aufgerufen und sollte nicht direkt aus Ihrem Code aufgerufen werden, außer wenn die Basisimplementierung aufgerufen wird, während diese Methode überschrieben wird. Um eine fixierte Kopie des aktuellen Objekts zu erstellen, rufen Sie GetAsFrozen diese Methode auf, anstatt direkt aufzurufen.

Hinweise für Vererber

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

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

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

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

Es ist wichtig, dass alle Implementierungen die Basisimplementierung dieser Methode aufrufen. Implementierungen sollten nur Aufgaben ausführen, die nicht von der Standardimplementierung ausgeführt werden. Die Standardimplementierung erstellt tiefe Kopien aller nicht infrozen Freezables und flachen Kopien aller anderen beschreibbaren, lokal festgelegten Eigenschaften, die sie enthält. Wenn das Objekt über datengebundene Abhängigkeitseigenschaften verfügt, werden die Ausdrücke kopiert, aber möglicherweise nicht mehr aufgelöst. Weitere Informationen zum Klonen von datengebundenen Objekten finden Sie unter Übersicht über Freezable-Objekte. Wenn das Objekt über animierte Abhängigkeitseigenschaften verfügt, werden die (nicht animierten) Basiswerte dieser Eigenschaften kopiert. Animationen werden nicht kopiert.

Beachten Sie, dass nicht festgelegte Eigenschaften weder kopiert werden noch schreibgeschützte Eigenschaften sind.

Wenn Sie diese Methode überschreiben, müssen Sie die Basisimplementierung aufrufen.

Sie benötigen keine Werte, Freeze() während sie kopiert werden. Das Ergebnis wird von eingefroren, GetAsFrozen() bevor es zurückgegeben wird.

Gilt für:

Weitere Informationen