Freezable.GetCurrentValueAsFrozenCore(Freezable) Metod

Definition

Gör den aktuella instansen till en frusen klon av den angivna Freezable. Om objektet har animerade beroendeegenskaper kopieras deras aktuella animerade värden.

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)

Parametrar

sourceFreezable
Freezable

Att Freezable kopiera och frysa.

Kommentarer

Den här metoden anropas av GetCurrentValueAsFrozen metoden och bör inte anropas direkt från koden, förutom när du anropar basimplementeringen medan den här metoden åsidosättas. Om du vill skapa en frusen kopia av det aktuella objektet anropar GetCurrentValueAsFrozen du i stället för att anropa den här metoden direkt.

Anteckningar till arvingar

Om du härleder från Freezablekan du behöva åsidosätta den här metoden. Orsaker att åsidosätta är följande:

  • Din härledda klass har data som inte exponeras via beroendeegenskaper.

  • Din härledda klass måste utföra extra initieringsarbete som inte kan utföras genom att CreateInstanceCore()helt enkelt åsidosätta . Detta gäller till exempel om din härledda klass implementerar ISupportInitialize.

Klasser som lagrar alla sina data i beroendeegenskaper och som inte behöver utföra extra initieringsarbete behöver inte åsidosätta GetCurrentValueAsFrozenCore(Freezable).

Det är viktigt att alla implementeringar anropar den grundläggande implementeringen av den här metoden. Implementeringar bör endast utföra arbete som inte utförs av standardimplementeringen. Standardimplementeringen skapar en ny Freezable med hjälp CreateInstance() av metoden och gör djupa kopior av oförutsebara freezables och grunda kopior av alla andra skrivbara, lokalt inställda egenskaper som den innehåller. Om objektet har databundna beroendeegenskaper kopieras databindningarna men kan inte längre matcha. Mer information om kloning av databundna objekt finns i Översikt över friserbara objekt. Om objektet har animerade beroendeegenskaper kopieras det aktuella animerade värdet för dessa egenskaper, men animeringarna är det inte.

Skrivskyddade beroendeegenskaper i en Freezable kopieras inte av den här standardimplementeringen.

Om du åsidosätter den här metoden måste du anropa basimplementeringen.

Du behöver Freeze() inte värden när de kopieras. Resultatet fryses av GetAsFrozen() innan det returneras.

Gäller för

Se även