Freezable.Clone Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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.