Freezable.GetCurrentValueAsFrozenCore(Freezable) Método

Definición

Convierte la instancia actual en un clon inmovilizado de la clase Freezable especificada.Makes the current instance a frozen clone of the specified Freezable. Si el objeto tiene propiedades de dependencia animadas, se copian sus valores animados actuales.If the object has animated dependency properties, their current animated values are copied.

protected:
 virtual void GetCurrentValueAsFrozenCore(System::Windows::Freezable ^ sourceFreezable);
protected virtual void GetCurrentValueAsFrozenCore (System.Windows.Freezable sourceFreezable);
abstract member GetCurrentValueAsFrozenCore : System.Windows.Freezable -> unit
override this.GetCurrentValueAsFrozenCore : System.Windows.Freezable -> unit
Protected Overridable Sub GetCurrentValueAsFrozenCore (sourceFreezable As Freezable)

Parámetros

sourceFreezable
Freezable

Clase Freezable que se va a copiar e inmovilizar.The Freezable to copy and freeze.

Comentarios

El método GetCurrentValueAsFrozen llama a este método y no debe llamarse directamente desde el código, excepto cuando se llama a la implementación base mientras se invalida este método.This method is called by the GetCurrentValueAsFrozen method and should not be called directly from your code, except when calling the base implementation while overriding this method. Para crear una copia inmovilizada del objeto actual, llame a GetCurrentValueAsFrozen en lugar de llamar a este método directamente.To create a frozen copy of the current object, call GetCurrentValueAsFrozen instead of calling this method directly.

Notas a los desarrolladores de herederos

Si deriva de Freezable, puede que tenga que invalidar este método.If you derive from Freezable, you may need to override this method. Entre los motivos de invalidación se incluyen los siguientes:Reasons to override include the following: -La clase derivada tiene datos que no se exponen a través de las propiedades de dependencia.- Your derived class has data that is not exposed via dependency properties.

-La clase derivada debe realizar un trabajo de inicialización adicional que no se puede llevar a cabo simplemente invalidando CreateInstanceCore().- Your derived class must perform extra initialization work that cannot be accomplished by simply overriding CreateInstanceCore(). Por ejemplo, esto se aplica si la clase derivada implementa ISupportInitialize.For example, this applies if your derived class implements ISupportInitialize.

Las clases que almacenan todos sus datos en las propiedades de dependencia y que no necesitan realizar ningún trabajo de inicialización adicional no necesitan invalidar GetCurrentValueAsFrozenCore(Freezable).Classes that store all their data in dependency properties and that do not need to perform extra initialization work do not need to override GetCurrentValueAsFrozenCore(Freezable).

Es fundamental que todas las implementaciones llamen a la implementación base de este método.It is essential that all implementations call the base implementation of this method. Las implementaciones solo deben realizar el trabajo que no realiza la implementación predeterminada.Implementations should only perform work that is not performed by the default implementation. La implementación predeterminada crea un nuevo Freezable mediante el método CreateInstance() y realiza copias en profundidad de elementos inmovilizables y copias rasas no congeladas de todas las demás propiedades que se puedan escribir en el conjunto local y que contenga.The default implementation creates a new Freezable using the CreateInstance() method and makes deep copies of unfrozen freezables and shallow copies of all other writable, locally set properties it contains. Si el objeto tiene propiedades de dependencia enlazadas a datos, se copian los enlaces de datos, pero es posible que ya no se resuelvan; para obtener más información sobre la clonación de objetos enlazados a datos, vea información general sobre objetos Freezable.If the object has data-bound dependency properties, the data bindings are copied but might no longer resolve; for more information about cloning data-bound objects, see Freezable Objects Overview. Si el objeto tiene propiedades de dependencia animadas, se copia el valor animado actual de esas propiedades, pero no las animaciones.If the object has animated dependency properties, the current animated value of those properties is copied, but the animations are not.

Esta implementación predeterminada no copia las propiedades de dependencia de solo lectura de un Freezable.Read-only dependency properties within a Freezable are not copied by this default implementation.

Si invalida este método, debe llamar a la implementación base.If you do override this method, you must call the base implementation.

No es necesario Freeze() valores a medida que se copian.You do not need to Freeze() values as they are copied. El resultado lo inmoviliza GetAsFrozen() antes de que se devuelva.The result is frozen by GetAsFrozen() before being returned.

Se aplica a

Consulte también: