Comment : obtenir une copie en écriture d'un Freezable en lecture seule

Mise à jour : novembre 2007

Cet exemple montre comment utiliser la méthode Clone pour créer une copie en écriture d'un Freezable en lecture seule.

Une fois qu'un objet Freezable est marqué en lecture seule (« figé »), vous ne pouvez pas le modifier. Toutefois, vous pouvez utiliser la méthode Clone pour créer un clone modifiable de l'objet figé.

Exemple

L'exemple suivant crée un clone modifiable d'un objet SolidColorBrush figé.

Button myButton = new Button();
SolidColorBrush myBrush = new SolidColorBrush(Colors.Yellow);

// Freezing a Freezable before it provides
// performance improvements if you don't
// intend on modifying it. 
if (myBrush.CanFreeze)
{
    // Makes the brush unmodifiable.
    myBrush.Freeze();
}


myButton.Background = myBrush;  

// If you need to modify a frozen brush,
// the Clone method can be used to
// create a modifiable copy.
SolidColorBrush myBrushClone = myBrush.Clone();

// Changing myBrushClone does not change
// the color of myButton, because its
// background is still set by myBrush.
myBrushClone.Color = Colors.Red;

// Replacing myBrush with myBrushClone
// makes the button change to red.
myButton.Background = myBrushClone;

Pour plus d'informations sur les objets Freezable, consultez Vue d'ensemble des objets Freezable.

Voir aussi

Concepts

Vue d'ensemble des objets Freezable

Référence

Freezable

CloneCurrentValue

Autres ressources

Rubriques Comment relatives aux éléments de base