Freezable.CloneCurrentValueCore(Freezable) Méthode

Définition

Fait de l’instance un clone (copie complète) modifiable du Freezable spécifié à l’aide des valeurs de propriété actuelles.

protected:
 virtual void CloneCurrentValueCore(System::Windows::Freezable ^ sourceFreezable);
protected virtual void CloneCurrentValueCore (System.Windows.Freezable sourceFreezable);
abstract member CloneCurrentValueCore : System.Windows.Freezable -> unit
override this.CloneCurrentValueCore : System.Windows.Freezable -> unit
Protected Overridable Sub CloneCurrentValueCore (sourceFreezable As Freezable)

Paramètres

sourceFreezable
Freezable

Freezable à cloner.

Remarques

Cette méthode est appelée par la CloneCurrentValue méthode et ne doit pas être appelée directement à partir de votre code, sauf lors de l’appel de l’implémentation de base lors de la substitution de cette méthode. Pour créer une copie modifiable de l’objet actuel, appelez CloneCurrentValue plutôt que d’appeler cette méthode directement.

Notes pour les héritiers

Si vous dérivez de Freezable , vous devrez peut-être substituer cette méthode. Les raisons du remplacement sont les suivantes : -Votre classe dérivée contient des données qui ne sont pas exposées via des propriétés de dépendance.

-Votre classe dérivée doit effectuer un travail d’initialisation supplémentaire qui ne peut pas être accompli en remplaçant simplement CreateInstanceCore() . Par exemple, cela s’applique si votre classe dérivée implémente ISupportInitialize .

Les classes qui stockent toutes leurs données dans des propriétés de dépendance et qui n’ont pas besoin d’effectuer des tâches d’initialisation supplémentaires n’ont pas besoin d’être substituées CloneCurrentValueCore(Freezable) .

Il est essentiel que toutes les implémentations appellent l’implémentation de base de cette méthode. Les implémentations doivent uniquement exécuter du travail qui n’est pas effectué par l’implémentation par défaut. L’implémentation par défaut effectue des copies complètes de toutes les propriétés accessibles en écriture localement définies. Si l’objet contient des propriétés de dépendance avec des expressions (telles qu’une liaison de données), la valeur actuelle de l’expression est copiée, mais pas l’expression elle-même.

Si l’objet a des propriétés de dépendance animées, la valeur animée actuelle de ces propriétés est copiée, mais pas les animations.

Notez que les propriétés non définies ne sont pas copiées et ne sont pas des propriétés en lecture seule. Si une telle propriété a une valeur par défaut qui est figée Freezable , cette valeur de propriété reste figée dans le clone modifiable dans le cas contraire.

La liste suivante résume le comportement attendu pour cette méthode.

-La copie produite contient des copies de tous les Freezable sous-objets.

-Les propriétés non définies et en lecture seule ne sont pas copiées.

-Si une propriété est animée, sa valeur actuelle est copiée, mais l’animation elle-même n’est pas.

-Aucun de ces sous-objets n’est figé à la création.

-La copie elle-même n’est pas figée.

S’applique à

Voir aussi