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

Definición

Crea una copia inmovilizada de Freezable, con los valores de propiedades base (no animadas).Creates a frozen copy of the Freezable, using base (non-animated) property values. Puesto que se inmoviliza la copia, se copia cualquier subobjeto inmovilizado por referencia.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

Devoluciones

Copia inmovilizada de Freezable.A frozen copy of the Freezable. La propiedad IsFrozen de la copia se establece en true.The copy's IsFrozen property is set to true.

Excepciones

No se puede inmovilizar Freezable porque contiene expresiones o propiedades animadas.The Freezable cannot be frozen because it contains expressions or animated properties.

Comentarios

Debe comprobar la CanFreeze propiedad antes de llamar a este método para comprobar Freezable que se puede inmovilizar.You should check the CanFreeze property before calling this method to verify that the Freezable can be frozen. El uso de este método es similar a crear una copia Clone mediante y, a continuación, Freeze inmovilizarla con el método.Using this method is similar to creating a copy using the Clone and then freezing it with the Freeze method.

Los GetAsFrozen métodos GetCurrentValueAsFrozen y pueden mejorar el rendimiento de la copia porque no Freezable clonan subobjetos que ya están inmovilizados; solo los copian por referencia.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.

En la tabla siguiente se resumen las diferencias entre GetAsFrozen los GetCurrentValueAsFrozen métodos y.The following table summarizes the differences between the GetAsFrozen and GetCurrentValueAsFrozen methods.

AcciónAction Comportamiento del método GetAsFrozenGetAsFrozen method behavior Comportamiento del método GetCurrentValueAsFrozenGetCurrentValueAsFrozen method behavior
Copiar una propiedad de dependencia que tiene una expresiónCopying a dependency property that has an expression El método produce una InvalidOperationException excepción porque no puede Freeze ser la propiedad.The method throws an InvalidOperationException because it cannot Freeze the property. Se copia el valor actual de la expresión, pero no la propia expresión.The current value of the expression is copied, but not the expression itself.
Copiar una propiedad de dependencia animadaCopying an animated dependency property Se copia el valor base (no animado) de la propiedad.The property's base (non-animated) value is copied. Las animaciones no se copian.Animations are not copied. Se copia el valor animado actual de la propiedad.The property's current animated value is copied. Las animaciones no se copian.Animations are not copied.

Tenga en cuenta que las propiedades no anuladas no se copian, ni son propiedades de solo lectura.Note that unset properties are not copied, nor are read-only properties.

Para crear una copia de Freezable que no esté inmovilizada, use el Clone método.To create a copy of the Freezable that is not frozen, use the Clone method.

Notas a los desarrolladores de herederos

Este método usa el método GetAsFrozenCore(Freezable) virtual para generar el clon.This method uses the virtual GetAsFrozenCore(Freezable) method to produce the clone.

Se aplica a

Consulte también: