Freezable.CloneCurrentValue Metodo

Definizione

Crea un clone modificabile (copia completa) dell'oggetto Freezable utilizzando i relativi valori correnti.

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

Valori restituiti

Clone modificabile dell'oggetto corrente. La proprietà dell'oggetto IsFrozen clonato è false anche se la proprietà dell'origine IsFrozen è true.

Commenti

I Clone metodi e CloneCurrentValue producono cloni modificabili di oggetti bloccati Freezable (i metodi clonano Freezable anche oggetti non bloccati). Il clone è in effetti una copia completa dell'oggetto corrente.

Nella tabella seguente vengono riepilogate le differenze tra i Clone metodi e CloneCurrentValue .

Action Comportamento del metodo clone Comportamento del metodo CloneCurrentValue
Copia di una proprietà di dipendenza con un'espressione L'espressione viene copiata, ma potrebbe non essere più risolta. Per ulteriori informazioni, vedere la Panoramica degli Oggetti Freezable . Il valore corrente dell'espressione viene copiato, ma non l'espressione stessa.
Copia di una proprietà di dipendenza animata Il valore di base della proprietà (non animato) viene copiato. Le animazioni non vengono copiate. Il valore animato corrente della proprietà viene copiato. Le animazioni non vengono copiate.

Si noti che le proprietà unset non vengono copiate. Se una proprietà unset ha un valore predefinito bloccato Freezable, tale valore della proprietà rimane bloccato nel clone modificabile in caso contrario.

Spostare un oggetto Freezable tra thread

Questo metodo può essere utile per lo spostamento di un oggetto Freezable tra thread. Prima di tutto, rendere l'oggetto Freezable non modificabile usando il relativo Freeze metodo. Ora un altro thread può accedere a Freezable e creare un clone locale a cui può accedere.

Note per gli eredi

Questo metodo usa il CloneCurrentValueCore(Freezable) metodo per produrre il clone. Freezable Gli implementatori che eseguono l'override CloneCurrentValueCore(Freezable) devono assicurarsi che la copia non sia bloccata durante la creazione.

Si applica a

Vedi anche