Freezable.CloneCurrentValue Yöntem

Tanım

Geçerli değerlerini kullanarak değiştirilebilir bir kopya (derin kopya) oluşturur Freezable .Creates a modifiable clone (deep copy) of the Freezable using its current values.

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

Döndürülenler

Freezable

Geçerli nesnenin değiştirilebilir bir kopyası.A modifiable clone of the current object. Kopyalanan nesnenin özelliği, IsFrozen false kaynağın özelliği olsa bile olur IsFrozen true .The cloned object's IsFrozen property is false even if the source's IsFrozen property is true.

Açıklamalar

CloneVe CloneCurrentValue yöntemleri dondurulmuş Freezable nesnelerin değiştirilebilir klonlarını üretir (Yöntemler Ayrıca Freezable dondurulmuş olmayan nesneleri klonlar).The Clone and CloneCurrentValue methods produce modifiable clones of frozen Freezable objects (the methods also clone Freezable objects that are not frozen). Kopya geçerli nesnenin etkili bir kopyasıdır.The clone is effectively a deep copy of the current object.

Aşağıdaki tabloda ve yöntemleri arasındaki farklar özetlenmektedir Clone CloneCurrentValue .The following table summarizes the differences between the Clone and CloneCurrentValue methods.

EylemAction Clone yöntemi davranışıClone method behavior CloneCurrentValue yöntemi davranışıCloneCurrentValue method behavior
Bir ifadeye sahip bir bağımlılık özelliğini kopyalamaCopying a dependency property that has an expression İfade kopyalanır, ancak artık çözümlenmeyebilir.The expression is copied, but might no longer resolve. Daha fazla bilgi için bkz. Freezable nesnelerine genel bakış.For more information, see Freezable Objects Overview. İfadenin geçerli değeri kopyalanır, ancak ifadenin kendisi değildir.The current value of the expression is copied, but not the expression itself.
Animasyonlu bağımlılık özelliğini kopyalamaCopying an animated dependency property Özelliğin temel (hareketli olmayan) değeri kopyalanır.The property's base (non-animated) value is copied. Animasyonlar kopyalanmaz.Animations are not copied. Özelliğin geçerli animasyon değeri kopyalanır.The property's current animated value is copied. Animasyonlar kopyalanmaz.Animations are not copied.

Unset özelliklerinin kopyalanmadığını unutmayın.Note that unset properties are not copied. Bir unset özelliği dondurulmuş olan bir varsayılan değere sahipse Freezable , bu özellik değeri, başka şekilde değiştirilebilir kopyada dondurulmuş olarak kalır.If an unset property has a default value that is a frozen Freezable, that property value remains frozen in the otherwise modifiable clone.

Bir Freezable 'ı Iş parçacıkları arasında taşımaMove a Freezable Between Threads

Bu yöntem, iş parçacıkları arasında taşımak için yararlı olabilir Freezable .This method can be useful for moving a Freezable between threads. İlk olarak, Freezable yöntemini kullanarak değiştirilemez yapın Freeze .First, make the Freezable unmodifiable by using its Freeze method. Artık başka bir iş parçacığı öğesine erişebilir Freezable ve erişebileceği yerel bir kopya oluşturabilir.Now another thread can access the Freezable and make a local clone that it can access.

Devralanlara Notlar

Bu yöntem, kopyayı CloneCurrentValueCore(Freezable) oluşturmak için yöntemini kullanır; Freezable geçersiz kılan uygulayıcılar CloneCurrentValueCore(Freezable) , kopyanın oluşturma sırasında dondurulmuş olmamasını sağlamalıdır.This method uses the CloneCurrentValueCore(Freezable) method to produce the clone; Freezable implementers who override CloneCurrentValueCore(Freezable) must ensure that the copy is not frozen on creation.

Şunlara uygulanır

Ayrıca bkz.