Freigeben über


Freezable.GetCurrentValueAsFrozen Methode

Definition

Erstellt eine fixierte Kopie von Freezable mit aktuellen Eigenschaftswerten. Da die Kopie fixiert ist, werden alle fixierten Unterobjekte als Verweis kopiert.

public:
 System::Windows::Freezable ^ GetCurrentValueAsFrozen();
public System.Windows.Freezable GetCurrentValueAsFrozen ();
member this.GetCurrentValueAsFrozen : unit -> System.Windows.Freezable
Public Function GetCurrentValueAsFrozen () As Freezable

Gibt zurück

Freezable

Eine fixierte Kopie von Freezable. Die IsFrozen-Eigenschaft der Kopie ist auf true festgelegt.

Hinweise

Die Verwendung dieser Methode ähnelt dem Erstellen einer Kopie mithilfe der CloneCurrentValue Methode und dem Anschließenden Einfrieren mit der Freeze Methode.

Die GetAsFrozen Und GetCurrentValueAsFrozen Methoden können die Kopierleistung verbessern, da sie keine bereits gesperrten Unterobjekte klonen Freezable . Sie kopieren sie nur nach Verweis.

In der folgenden Tabelle werden die Unterschiede zwischen den Methoden und den GetAsFrozen GetCurrentValueAsFrozen Methoden zusammengefasst.

Aktion GetAsFrozen-Methodenverhalten GetCurrentValueAsFrozen-Methodenverhalten
Kopieren einer Abhängigkeitseigenschaft mit einem Ausdruck Die Methode löst eine InvalidOperationException aus, weil sie die Eigenschaft nicht hat Freeze . Der aktuelle Wert des Ausdrucks wird kopiert, aber nicht der Ausdruck selbst.
Kopieren einer animierten Abhängigkeitseigenschaft Der Basiswert der Eigenschaft (nicht animiert) wird kopiert. Animationen werden nicht kopiert. Der aktuelle animierte Wert der Eigenschaft wird kopiert. Animationen werden nicht kopiert.

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

Verwenden Sie die CloneCurrentValue Methode, um eine Kopie der Freezable nicht gesperrten Datei zu erstellen.

Hinweise für Vererber

Diese Methode verwendet die virtuelle Methode, um den Klon GetCurrentValueAsFrozenCore(Freezable) zu erzeugen.

Gilt für

Siehe auch