Freezable.GetAsFrozenCore(Freezable) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Macht die Instanz zu einem fixierten Klon der angegebenen Freezable Basiseigenschaft (nicht animierte) Eigenschaftswerte.
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 Dem Code aufgerufen werden, außer beim Aufrufen der Basisimplementierung beim Überschreiben dieser Methode. Um eine fixierte Kopie des aktuellen Objekts zu erstellen, rufen Sie diese GetAsFrozen Methode nicht direkt auf.
Hinweise für Vererber
Wenn Sie von dieser Methode abgeleitet Freezable werden, müssen Sie diese Methode möglicherweise außer Kraft setzen. 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 GetAsFrozenCore(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 unfrozen freezables und flachen Kopien aller anderen schreibbaren, 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 "Freezable Objects Overview". Wenn das Objekt animierte Abhängigkeitseigenschaften aufweist, werden die Basiswerte (nicht animiert) dieser Eigenschaften kopiert. Animationen werden nicht kopiert.
Beachten Sie, dass nicht festgelegte Eigenschaften nicht kopiert werden oder schreibgeschützte Eigenschaften sind.
Wenn Sie diese Methode außer Kraft setzen, müssen Sie die Basisimplementierung aufrufen.
Sie müssen keine Werte benötigen Freeze() , während sie kopiert werden. Das Ergebnis wird eingefroren, bevor GetAsFrozen() es zurückgegeben wird.