Freezable.GetAsFrozen Metoda

Definice

Vytvoří zmrazenou kopii Freezablevlastnosti , pomocí základních (ne animovaných) hodnot vlastností. Vzhledem k tomu, že je kopie zmrazená, všechny zmrazené dílčí objekty se kopírují odkazem.

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

Návraty

Freezable

Zmrazená kopie Freezable. Vlastnost kopírování IsFrozen je nastavena na truehodnotu .

Výjimky

Nelze Freezable zamrznout, protože obsahuje výrazy nebo animované vlastnosti.

Poznámky

Před voláním této metody byste měli zkontrolovat CanFreeze vlastnost, abyste ověřili, že Freezable lze zamrznout. Použití této metody je podobné vytvoření kopie pomocí a Clone následné zmrazení s metodou Freeze .

Tyto GetAsFrozen metody GetCurrentValueAsFrozen můžou zlepšit výkon kopírování, protože nenaklonují Freezable dílčí objekty, které jsou již zmrazené. Zkopírují je pouze odkazem.

Následující tabulka shrnuje rozdíly mezi metodami GetAsFrozen a GetCurrentValueAsFrozen metodami.

Akce Chování metody GetAsFrozen GetCurrentValueAsFrozen – chování metody
Kopírování vlastnosti závislosti, která má výraz Metoda vyvolá, InvalidOperationException protože nemůže Freeze vlastnost. Aktuální hodnota výrazu se zkopíruje, ale ne samotný výraz.
Kopírování animované vlastnosti závislostí Zkopírovaná základní hodnota vlastnosti (ne animovaná). Animace se nekopírují. Aktuální animovaná hodnota vlastnosti se zkopíruje. Animace se nekopírují.

Všimněte si, že nekopírované vlastnosti nejsou zkopírovány ani vlastnosti jen pro čtení.

Pokud chcete vytvořit kopii nezamrzlé kopie Freezable , použijte metodu Clone .

Poznámky pro dědice

Tato metoda používá virtuální GetAsFrozenCore(Freezable) metodu k vytvoření klonu.

Platí pro

Viz také