次の方法で共有


方法 : Freezable が固定されているかどうかを判別する

更新 : 2007 年 11 月

この例では、Freezable オブジェクトが固定されているかどうかを判別する方法を示します。固定された Freezable オブジェクトを変更しようとすると、InvalidOperationException がスローされます。この例外がスローされるのを避けるには、Freezable オブジェクトの IsFrozen プロパティを使用して、オブジェクトが固定されているかどうかを判別します。

使用例

SolidColorBrush を固定した後、IsFrozen プロパティを使用してテストし、固定されているかどうかを判別する例を次に示します。

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;
}


Freezable オブジェクトの詳細については、「Freezable オブジェクトの概要」を参照してください。

参照

概念

Freezable オブジェクトの概要

参照

Freezable

IsFrozen

その他の技術情報

基本要素に関する「方法」トピック