Freezable.GetAsFrozenCore(Freezable) Freezable.GetAsFrozenCore(Freezable) Freezable.GetAsFrozenCore(Freezable) Freezable.GetAsFrozenCore(Freezable) Method

Definition

Definiert die Instanz als fixierten Klon des angegebenen Freezable mit Basiseigenschaftswerten (nicht animiert).Makes the instance a frozen clone of the specified Freezable using base (non-animated) property values.

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 Freezable Freezable Freezable

Die zu kopierende Instanz.The instance to copy.

Hinweise

Diese Methode wird von der GetAsFrozen -Methode aufgerufen und sollte nicht direkt aus dem Code aufgerufen werden, außer wenn beim Überschreiben dieser Methode die Basis Implementierung aufgerufen wird.This method is called by the GetAsFrozen method and should not be called directly from your code, except when calling the base implementation while overriding this method. Um eine fixierte Kopie des aktuellen-Objekts zu erstellen GetAsFrozen , rufen Sie auf, anstatt diese Methode direkt aufzurufen.To create a frozen copy of the current object, call GetAsFrozen instead of calling this method directly.

Hinweise für Vererber

Wenn Sie von Freezable abgeleitet haben, müssen Sie diese Methode möglicherweise außer Kraft setzen.If you derive from Freezable you may need to override this method. Folgende Gründe können außer Kraft gesetzt werden:Reasons to override include the following: -Ihre abgeleitete Klasse verfügt über Daten, die nicht über Abhängigkeits Eigenschaften verfügbar gemacht werden.- Your derived class has data that is not exposed via dependency properties.

-Die abgeleitete Klasse muss zusätzliche Initialisierungs Aufgaben ausführen, die nicht durch einfaches CreateInstanceCore()überschreiben durchgeführt werden können.- Your derived class must perform extra initialization work that cannot be accomplished by simply overriding CreateInstanceCore(). Dies gilt z. b., wenn die abgeleitete Klasse implementiert ISupportInitialize.For example, this applies if your derived class implements ISupportInitialize.

Klassen, in denen alle Ihre Daten in Abhängigkeits Eigenschaften gespeichert werden und die keine zusätzlichen Initialisierungs Aufgaben ausführen müssen, müssen nicht GetAsFrozenCore(Freezable)überschrieben werden.Classes that store all their data in dependency properties and that do not need to perform extra initialization work do not need to override GetAsFrozenCore(Freezable).

Es ist von grundlegender Bedeutung, dass alle-Implementierungen die Basis Implementierung dieser Methode aufzurufen.It is essential that all implementations call the base implementation of this method. Implementierungen sollten nur Aufgaben ausführen, die nicht von der Standard Implementierung ausgeführt werden.Implementations should only perform work that is not performed by the default implementation. Die Standard Implementierung stellt Tiefe Kopien aller nicht fixierten, frei wählbaren und flachen Kopien aller anderen beschreibbaren, lokal festgelegten Eigenschaften dar, die Sie enthält.The default implementation makes deep copies of any unfrozen freezables and shallow copies of all other writable, locally set properties it contains. Wenn das-Objekt über Daten gebundene Abhängigkeits Eigenschaften verfügt, werden die Ausdrücke kopiert, aber möglicherweise nicht mehr aufgelöst. Weitere Informationen zum Klonen von Daten gebundenen Objekten finden Sie unter Übersichtüber frei wählbare Objekte.If the object has data-bound dependency properties, the expressions are copied but might no longer resolve; for more information about cloning data-bound objects, see Freezable Objects Overview. Wenn das Objekt über animierte Abhängigkeits Eigenschaften verfügt, werden die Basiswerte (nicht animiert) dieser Eigenschaften kopiert.If the object has animated dependency properties, the base (non-animated) values of those properties are copied. Animationen werden nicht kopiert.Animations are not copied.

Beachten Sie, dass nicht festgelegte Eigenschaften weder kopiert noch schreibgeschützte Eigenschaften sind.Note that unset properties are not copied, nor are read-only properties.

Wenn Sie diese Methode überschreiben, müssen Sie die Basis Implementierung aufzurufen.If you do override this method, you must call the base implementation.

Beim Kopieren müssen Freeze() keine Werte angezeigt werden.You do not need to Freeze() values as they are copied. Das Ergebnis wird durch GetAsFrozen() eingefroren, bevor es zurückgegeben wird.The result is frozen by GetAsFrozen() before being returned.

Gilt für:

Siehe auch