Freezable Sınıf

Tanım

Değiştirilebilir duruma ve salt okunur (dondurulmuş) duruma sahip bir nesneyi tanımlar. 'den Freezable türetilen sınıflar ayrıntılı değişiklik bildirimi sağlar, sabit hale getirilebilir ve kendilerini kopyalayabilir.

public ref class Freezable abstract : System::Windows::DependencyObject
public abstract class Freezable : System.Windows.DependencyObject
type Freezable = class
    inherit DependencyObject
Public MustInherit Class Freezable
Inherits DependencyObject
Devralma
Türetilmiş

Açıklamalar

sınıfı, Freezable değiştirilmesi veya kopyalanması pahalı nesneleri kullanırken uygulama performansını iyileştirmeye yardımcı olabilecek özel özellikler sağlar. Nesne örnekleri Freezable şunlardır:

Freezable'dan Türeyen

Aşağıdaki özelliklerden Freezable türetilen bir sınıf elde eder:

  • Özel durumlar: salt okunur (dondurulmuş) durum ve yazılabilir durum.

  • İş parçacığı güvenliği: Dondurulmuş Freezable bir nesne iş parçacıkları arasında paylaşılabilir.

  • Ayrıntılı değişiklik bildirimi: Diğer DependencyObject nesnelerin aksine, alt özellik değerleri değiştiğinde nesne Freezable değişiklik bildirimleri sağlar.

  • Kolay kopyalama: Freezable sınıfı zaten derin klonlar üreten çeşitli yöntemler uygulamıştır.

Kendi Freezable nesnelerinizi kullanma ve oluşturma hakkında bilgi için bkz . Freezable Nesnelerine Genel Bakış.

Oluşturucular

Freezable()

Türetilmiş bir sınıfın yeni bir Freezable örneğini başlatır.

Özellikler

CanFreeze

Nesnenin değiştirilemez hale getirilip getirilemeyeceğini belirten bir değer alır.

DependencyObjectType

DependencyObjectType Bu örneğin CLR türünü sarmalayan öğesini alır.

(Devralındığı yer: DependencyObject)
Dispatcher

Dispatcher Bunun DispatcherObject ilişkili olduğu öğesini alır.

(Devralındığı yer: DispatcherObject)
IsFrozen

Nesnenin şu anda değiştirilebilir olup olmadığını gösteren bir değer alır.

IsSealed

Bu örneğin şu anda korumalı olup olmadığını belirten bir değer alır (salt okunur).

(Devralındığı yer: DependencyObject)

Yöntemler

CheckAccess()

Çağıran iş parçacığının bu DispatcherObjectöğesine erişimi olup olmadığını belirler.

(Devralındığı yer: DispatcherObject)
ClearValue(DependencyProperty)

Bir özelliğin yerel değerini temizler. Temizlenecek özellik bir DependencyProperty tanımlayıcı tarafından belirtilir.

(Devralındığı yer: DependencyObject)
ClearValue(DependencyPropertyKey)

Salt okunur özelliğin yerel değerini temizler. Temizlenecek özellik tarafından DependencyPropertyKeybelirtilir.

(Devralındığı yer: DependencyObject)
Clone()

nesnesinin değerlerinin Freezablederin kopyalarını oluşturan değiştirilebilir bir kopyasını oluşturur. Nesnenin bağımlılık özelliklerini kopyalarken, bu yöntem ifadeleri kopyalar (artık çözümlenmeyebilir) ancak animasyonları veya geçerli değerlerini kopyalamıyor.

CloneCore(Freezable)

Temel (animasyonlu olmayan) özellik değerlerini kullanarak örneği belirtilen Freezable kopya (derin kopya) yapar.

CloneCurrentValue()

Geçerli değerlerini kullanarak öğesinin Freezable değiştirilebilir bir kopyasını (derin kopya) oluşturur.

CloneCurrentValueCore(Freezable)

Örneği, geçerli özellik değerlerini kullanarak belirtilenlerin Freezable değiştirilebilir bir kopyası (derin kopya) yapar.

CoerceValue(DependencyProperty)

Belirtilen bağımlılık özelliğinin değerini zorlama. Bu, çağrısında DependencyObjectvar olan bağımlılık özelliği için özellik meta verilerinde belirtilen herhangi bir CoerceValueCallback işlevi çağırarak gerçekleştirilir.

(Devralındığı yer: DependencyObject)
CreateInstance()

Freezable sınıfının yeni bir örneğini başlatır.

CreateInstanceCore()

Türetilmiş bir sınıfta uygulandığında, türetilmiş sınıfın Freezable yeni bir örneğini oluşturur.

Equals(Object)

Sağlanan DependencyObject öğesinin geçerli DependencyObjectile eşdeğer olup olmadığını belirler.

(Devralındığı yer: DependencyObject)
Freeze()

Geçerli nesneyi değiştirilemez hale getirir ve özelliğini olarak trueayarlarIsFrozen.

Freeze(Freezable, Boolean)

isChecking parametresi isetrue, bu yöntem belirtilen Freezable öğesinin değiştirilemez hale getirilip getirilemeyeceğini gösterir. isChecking parametresi isefalse, bu yöntem belirtilen Freezable değiştirilemez duruma getirme girişiminde bulunur ve işlemin başarılı olup olmadığını gösterir.

FreezeCore(Boolean)

Freezable Nesneyi değiştirilemez hale getirir veya değiştirilemez hale getirilip getirilemeyeceğini test eder.

GetAsFrozen()

temel (animasyonsuz) özellik değerlerini kullanarak öğesinin dondurulan Freezablebir kopyasını oluşturur. Kopya donduruldu olduğundan, dondurulan tüm alt nesneler başvuruyla kopyalanır.

GetAsFrozenCore(Freezable)

Temel (animasyonlu olmayan) özellik değerlerini kullanarak örneği belirtilen Freezable öğesinin dondurulan bir kopyası yapar.

GetCurrentValueAsFrozen()

Geçerli özellik değerlerini kullanarak öğesinin dondurulan Freezable bir kopyasını oluşturur. Kopya donduruldu olduğundan, dondurulan tüm alt nesneler başvuruyla kopyalanır.

GetCurrentValueAsFrozenCore(Freezable)

Geçerli örneği, belirtilen Freezableöğesinin dondurulan bir kopyası yapar. Nesnenin animasyonlu bağımlılık özellikleri varsa, geçerli animasyonlu değerleri kopyalanır.

GetHashCode()

Bu DependencyObjectiçin bir karma kodu alır.

(Devralındığı yer: DependencyObject)
GetLocalValueEnumerator()

Hangi bağımlılık özelliklerinin bu DependencyObjectüzerinde yerel olarak ayarlı değerlere sahip olduğunu belirlemek için özelleştirilmiş bir numaralandırıcı oluşturur.

(Devralındığı yer: DependencyObject)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
GetValue(DependencyProperty)

Bir öğesinin bu örneğindeki bağımlılık özelliğinin DependencyObjectgeçerli geçerli değerini döndürür.

(Devralındığı yer: DependencyObject)
InvalidateProperty(DependencyProperty)

Belirtilen bağımlılık özelliği için geçerli değeri yeniden değerlendirir.

(Devralındığı yer: DependencyObject)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
OnChanged()

Geçerli Freezable nesne değiştirildiğinde çağrılır.

OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Yeni ayarlanmış bir DependencyObjectType veri üyesi için uygun bağlam işaretçilerinin oluşturulmasını sağlar.

OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Bu üye Windows Presentation Foundation (WPF) altyapısını destekler ve doğrudan kodunuzdan kullanılması amaçlanmamıştır.

OnPropertyChanged(DependencyPropertyChangedEventArgs)

türündeki DependencyObjectFreezabledeğişen bağımlılık özelliğine yanıt olarak herhangi Changed bir işleyici çağırmak için uygulamasını OnPropertyChanged(DependencyPropertyChangedEventArgs) geçersiz kılar.

ReadLocalValue(DependencyProperty)

Varsa, bağımlılık özelliğinin yerel değerini döndürür.

(Devralındığı yer: DependencyObject)
ReadPreamble()

Freezable geçerli bir iş parçacığından erişildiğinden emin olunmasını sağlar. öğesinin Freezable devralıcıları, bağımlılık özellikleri olmayan veri üyelerini okuyan herhangi bir API'nin başında bu yöntemi çağırmalıdır.

SetCurrentValue(DependencyProperty, Object)

Bir bağımlılık özelliğinin değerini, değer kaynağını değiştirmeden ayarlar.

(Devralındığı yer: DependencyObject)
SetValue(DependencyProperty, Object)

Bağımlılık özelliği tanımlayıcısı tarafından belirtilen bir bağımlılık özelliğinin yerel değerini ayarlar.

(Devralındığı yer: DependencyObject)
SetValue(DependencyPropertyKey, Object)

Bağımlılık özelliğinin tanımlayıcısı tarafından belirtilen salt okunur bağımlılık özelliğinin DependencyPropertyKey yerel değerini ayarlar.

(Devralındığı yer: DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Serileştirme işlemlerinin sağlanan bağımlılık özelliği için değeri serileştirmesi gerekip gerekmediğini belirten bir değer döndürür.

(Devralındığı yer: DependencyObject)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)
VerifyAccess()

Çağıran iş parçacığının bu DispatcherObjectöğesine erişmesini zorlar.

(Devralındığı yer: DispatcherObject)
WritePostscript()

Changed için Freezable olayını oluşturur ve yöntemini çağırırOnChanged(). öğesinden Freezable türetilen sınıflar, bağımlılık özellikleri olarak depolanmayan sınıf üyelerini değiştiren herhangi bir API'nin sonunda bu yöntemi çağırmalıdır.

WritePreamble()

öğesinin Freezable dondurulmadığını ve geçerli bir iş parçacığı bağlamından erişildiğini doğrular. Freezable inheritor'lar bağımlılık özellikleri olmayan veri üyelerine yazan herhangi bir API'nin başında bu yöntemi çağırmalıdır.

Ekinlikler

Changed

içerdiği veya nesnesi değiştirildiğinde Freezable gerçekleşir.

Şunlara uygulanır

İş Parçacığı Güvenliği

Bu türün tüm genel static üyeleri iş parçacığı güvenlidir. Örnek üyelerin iş parçacığı güvenli olmaları garanti edilmez.

IsFrozen özelliği olduğundafalse, bir Freezable nesneye yalnızca oluşturulduğu iş parçacığından erişilebilir. Başka bir iş parçacığından erişmeye çalışılması bir InvalidOperationExceptionoluşturur. Invoke ve BeginInvoke yöntemleri, doğru iş parçacığına hazırlama desteği sağlar.

Özellikleri IsFrozen olduğunda true, Freezable nesneler serbest iş parçacıklıdır. Daha fazla bilgi için bkz . Freezable Nesnelerine Genel Bakış.