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

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

使用例

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


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


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

参照

参照

Freezable

IsFrozen

概念

Freezable オブジェクトの概要

その他の技術情報

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