Freezable.CloneCurrentValue Metodo

Definizione

Crea un clone modificabile (copia completa) di Freezable utilizzando i valori correnti.

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

Restituisce

Freezable

Clone modificabile dell'oggetto corrente. La proprietà IsFrozen dell'oggetto duplicato restituisce il valore false anche se il valore della proprietà IsFrozen dell'oggetto di origine è true.

Commenti

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

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

Azione 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 altre informazioni, vedere Cenni preliminari sugli 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à nonset non vengono copiate. Se una proprietà non impostata ha un valore predefinito che è bloccato Freezable, tale valore della proprietà rimane bloccato nel clone modificabile in caso contrario.

Spostare un elemento freezable tra thread

Questo metodo può essere utile per lo spostamento di un Freezable oggetto 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