Freezable.GetAsFrozen Yöntem

Tanım

Temel (animasyonlu olmayan) özellik değerlerini kullanarak öğesinin Freezabledondurulan bir kopyasını oluşturur. Kopya donduruldığından, dondurulan tüm alt nesneler başvuruyla kopyalanır.

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

Döndürülenler

öğesinin dondurulan Freezablekopyası. Kopyanın IsFrozen özelliği olarak trueayarlanır.

Özel durumlar

Freezable, ifadeler veya animasyonlu özellikler içerdiğinden dondurulamaz.

Açıklamalar

öğesinin CanFreeze dondurulabildiğini doğrulamak Freezable için bu yöntemi çağırmadan önce özelliğini denetlemeniz gerekir. Bu yöntemin kullanılması, kullanarak bir kopya Clone oluşturmaya ve ardından yöntemiyle dondurmaya Freeze benzer.

GetAsFrozen ve GetCurrentValueAsFrozen yöntemleri, zaten dondurulan alt nesneleri kopyalamadıkları Freezable için kopyalama performansını geliştirebilir; yalnızca başvuruyla kopyalarlar.

Aşağıdaki tabloda ve GetCurrentValueAsFrozen yöntemleri arasındaki GetAsFrozen farklar özetlemektedir.

Eylem GetAsFrozen yöntemi davranışı GetCurrentValueAsFrozen yöntemi davranışı
İfadesi olan bir bağımlılık özelliğini kopyalama yöntemi, özelliğine sahip olmadığı Freeze için bir InvalidOperationException oluşturur. İfadenin geçerli değeri kopyalanır, ancak ifadenin kendisi kopyalanmaz.
Animasyonlu bağımlılık özelliğini kopyalama Özelliğin temel (animasyonsuz) değeri kopyalanır. Animasyonlar kopyalanmaz. Özelliğin geçerli animasyonlu değeri kopyalanır. Animasyonlar kopyalanmaz.

Küme dışı özelliklerin kopyalanmadığını ve salt okunur özellik olmadığını unutmayın.

Dondurulmayan bir kopyasını Freezable oluşturmak için yöntemini kullanın Clone .

Devralanlara Notlar

Bu yöntem, kopyayı üretmek için sanal GetAsFrozenCore(Freezable) yöntemini kullanır.

Şunlara uygulanır

Ayrıca bkz.