Freezable.Clone Méthode

Définition

Crée un clone modifiable du Freezable, effectuant des copies approfondies des valeurs de l’objet. Lors de la copie des propriétés de dépendance de l’objet, cette méthode copie les expressions (qui peuvent ne plus être résolues), mais pas les animations ou leurs valeurs actuelles.

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

Retours

Clone modifiable de l’objet actuel. La propriété de l’objet IsFrozen cloné est false même si la propriété de IsFrozen la source est true.

Remarques

Les Clone méthodes et CloneCurrentValue les méthodes produisent des clones modifiables d’objets figés Freezable (les méthodes clonent Freezable également des objets qui ne sont pas figés). Le clone est effectivement une copie approfondie de l’objet actuel.

Le tableau suivant résume les différences entre les méthodes et Clone les CloneCurrentValue méthodes.

Action Comportement de la méthode clone Comportement de la méthode CloneCurrentValue
Copie d’une propriété de dépendance qui a une expression L’expression est copiée, mais peut ne plus être résolue. Pour plus d’informations, consultez Vue d’ensemble des objets gelables. La valeur actuelle de l’expression est copiée, mais pas l’expression elle-même.
Copie d’une propriété de dépendance animée La valeur de base (non animée) de la propriété est copiée. Les animations ne sont pas copiées. La valeur animée actuelle de la propriété est copiée. Les animations ne sont pas copiées.

Notez que les propriétés non définies ne sont pas copiées. Si une propriété non définie a une valeur par défaut qui est figée, cette valeur de propriété reste figée Freezabledans le clone modifiable autrement.

Déplacer un thread libre entre les threads

Cette méthode peut être utile pour déplacer un Freezable thread entre les threads. Tout d’abord, rendez l’inmodifiable Freezable en appelant sa Freeze méthode. À présent, un autre thread peut accéder et Freezable rendre un local Clone auquel il peut accéder.

Notes pour les héritiers

Cette méthode utilise CloneCore(Freezable) pour produire le clone. Pour modifier le comportement de cette méthode dans une classe dérivée, remplacez la CloneCore(Freezable) méthode.

S’applique à

Voir aussi