Freezable.GetAsFrozen Freezable.GetAsFrozen Freezable.GetAsFrozen Freezable.GetAsFrozen Method

Определение

Создает фиксированную копию объекта Freezable, используя базовые (не анимационные) значения свойств.Creates a frozen copy of the Freezable, using base (non-animated) property values. Так как копия является фиксированной, копируются только ссылки на фиксированные вложенные объекты.Because the copy is frozen, any frozen sub-objects are copied by reference.

public:
 System::Windows::Freezable ^ GetAsFrozen();
public System.Windows.Freezable GetAsFrozen ();
member this.GetAsFrozen : unit -> System.Windows.Freezable
Public Function GetAsFrozen () As Freezable

Возвраты

Фиксированная копия объекта Freezable.A frozen copy of the Freezable. Свойство копии IsFrozen имеет значение true.The copy's IsFrozen property is set to true.

Исключения

Объект Freezable нельзя заморозить, так как он включает выражения или анимационные свойства.The Freezable cannot be frozen because it contains expressions or animated properties.

Комментарии

Перед вызовом этого CanFreeze метода следует проверить свойство, чтобы убедиться, что Freezable объект может быть заморожен.You should check the CanFreeze property before calling this method to verify that the Freezable can be frozen. Использование этого метода аналогично созданию копии с помощью, Clone а затем замораживанию Freeze с помощью метода.Using this method is similar to creating a copy using the Clone and then freezing it with the Freeze method.

Методы GetAsFrozen Freezable и GetCurrentValueAsFrozen могут повысить производительность при копировании, поскольку не клонировать подобъекты, которые уже заморожены. они копируют только их по ссылке.The GetAsFrozen and GetCurrentValueAsFrozen methods can improve copying performance because they do not clone Freezable sub-objects that are already frozen; they only copy them by reference.

В следующей таблице приведены различия между GetAsFrozen методами и. GetCurrentValueAsFrozenThe following table summarizes the differences between the GetAsFrozen and GetCurrentValueAsFrozen methods.

ДействиеAction Поведение метода ЖетасфрозенGetAsFrozen method behavior Поведение метода ЖеткуррентвалуеасфрозенGetCurrentValueAsFrozen method behavior
Копирование свойства зависимостей, имеющего выражениеCopying a dependency property that has an expression Метод создает исключение, InvalidOperationException поскольку не может Freeze быть свойством.The method throws an InvalidOperationException because it cannot Freeze the property. Текущее значение выражения копируется, но не само выражение.The current value of the expression is copied, but not the expression itself.
Копирование анимированного свойства зависимостейCopying an animated dependency property Копируется базовое (не анимационное) значение свойства.The property's base (non-animated) value is copied. Анимации не копируются.Animations are not copied. Копируется текущее анимированное значение свойства.The property's current animated value is copied. Анимации не копируются.Animations are not copied.

Обратите внимание, что неопределенные свойства не копируются и не являются свойствами только для чтения.Note that unset properties are not copied, nor are read-only properties.

Чтобы создать копию Freezable незамороженного объекта, Clone используйте метод.To create a copy of the Freezable that is not frozen, use the Clone method.

Примечания для тех, кто наследует этот метод

Этот метод использует виртуальный GetAsFrozenCore(Freezable) метод для создания клона.This method uses the virtual GetAsFrozenCore(Freezable) method to produce the clone.

Применяется к

Дополнительно