Como: Determinar se um Freezable está congelado

Este exemplo mostra como determinar se um objeto Freezable está congelado. Se você tentar modificar um objeto congelado Freezable, ele gera uma InvalidOperationException. Para evitar lançar esta exceção, use a propriedade IsFrozen do objeto Freezable para determinar se ele está congelado.

Exemplo

O exemplo seguinte congela um SolidColorBrush e, em seguida, testa-o usando a propriedade IsFrozen para determinar se ele está congelado.

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

if (myBrush.CanFreeze)
{
    // Makes the brush unmodifiable.
    myBrush.Freeze();
}            

myButton.Background = myBrush;


if (myBrush.IsFrozen) // Evaluates to true.
{
    // If the brush is frozen, create a clone and
    // modify the clone.
    SolidColorBrush myBrushClone = myBrush.Clone();
    myBrushClone.Color = Colors.Red;
    myButton.Background = myBrushClone;
}
else
{
    // If the brush is not frozen,
    // it can be modified directly.
    myBrush.Color = Colors.Red;
}


Para obter mais informações sobre objetos Freezable, consulte Visão geral sobre objetos Freezable.

Consulte também

Conceitos

Visão geral sobre objetos Freezable

Referência

Freezable

IsFrozen

Outros recursos

Tópicos Como fazer Elementos Base