Gewusst wie: Bestimmen, ob ein Freezable-Objekt fixiert ist
In diesem Beispiel wird dargestellt, wie Sie bestimmen können, ob ein Freezable-Objekt fixiert ist. Wenn Sie ein fixiertes Freezable-Objekt bearbeiten möchten, wird eine InvalidOperationException ausgelöst. Sie können das Auslösen dieser Ausnahme verhindern, wenn Sie mithilfe der Eigenschaft IsFrozen des Freezable-Objekts ermitteln, ob das Objekt fixiert ist.
Beispiel
Im folgenden Beispiel wird ein SolidColorBrush fixiert und mithilfe der Eigenschaft IsFrozen ermittelt, ob es fixiert ist.
Dim myButton As New Button()
Dim myBrush As New SolidColorBrush(Colors.Yellow)
If myBrush.CanFreeze Then
' Makes the brush unmodifiable.
myBrush.Freeze()
End If
myButton.Background = myBrush
If myBrush.IsFrozen Then ' Evaluates to true.
' If the brush is frozen, create a clone and
' modify the clone.
Dim myBrushClone As SolidColorBrush = 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
End If
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;
}
Weitere Informationen zu Freezable Objekten finden Sie unter Übersicht über Freezable-Objekte.
Siehe auch
Referenz
Konzepte
Übersicht über Freezable-Objekte