Freezable.GetCurrentValueAsFrozenCore(Freezable) Freezable.GetCurrentValueAsFrozenCore(Freezable) Freezable.GetCurrentValueAsFrozenCore(Freezable) Freezable.GetCurrentValueAsFrozenCore(Freezable) Method

Definition

Legt die aktuelle Instanz als fixierten Klon des angegebenen Freezable fest.Makes the current instance a frozen clone of the specified Freezable. Wenn das Objekt über animierte Abhängigkeitseigenschaften verfügt, werden die aktuellen animierten Werte kopiert.If the object has animated dependency properties, their current animated values are copied.

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

Parameter

sourceFreezable
Freezable Freezable Freezable Freezable

Das Freezable, das kopiert und fixiert werden soll.The Freezable to copy and freeze.

Hinweise

Diese Methode wird von der GetCurrentValueAsFrozen -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 GetCurrentValueAsFrozen 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 GetCurrentValueAsFrozen , rufen Sie auf, anstatt diese Methode direkt aufzurufen.To create a frozen copy of the current object, call GetCurrentValueAsFrozen instead of calling this method directly.

Hinweise für Vererber

Wenn Sie von Freezableableiten, 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 GetCurrentValueAsFrozenCore(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 GetCurrentValueAsFrozenCore(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 erstellt mithilfe der Freezable -Methode CreateInstance() eine neue und erstellt tiefe Kopien von nicht fixierten, frei wählbaren und flachen Kopien aller anderen beschreibbaren, lokal festgelegten Eigenschaften, die Sie enthält.The default implementation creates a new Freezable using the CreateInstance() method and makes deep copies of unfrozen freezables and shallow copies of all other writable, locally set properties it contains. Wenn das Objektdaten gebundene Abhängigkeits Eigenschaften aufweist, werden die Daten Bindungen 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 data bindings 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, wird der aktuelle animierte Wert dieser Eigenschaften kopiert, aber die Animationen sind nicht.If the object has animated dependency properties, the current animated value of those properties is copied, but the animations are not.

Schreibgeschützte Abhängigkeits Eigenschaften innerhalb Freezable von werden nicht von dieser Standard Implementierung kopiert.Read-only dependency properties within a Freezable are not copied by this default implementation.

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