Freezable Osztály

Definíció

Módosítható állapotú és írásvédett (fagyasztott) állapotú objektumot definiál. A részletes változásértesítésből Freezable származó osztályok megváltoztathatatlanok, és klónozhatók.

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
Öröklődés
Származtatott

Megjegyzések

Az Freezable osztály olyan speciális funkciókat biztosít, amelyek segíthetnek az alkalmazások teljesítményének javításában, ha olyan objektumokat használnak, amelyek költségesek a módosításhoz vagy a másoláshoz. Az objektumok például Freezable a következők:

Származtatása a fagyasztható

Egy osztály, amely a következő funkciókból Freezable származik:

  • Speciális állapotok: írásvédett (fagyasztott) állapot és írható állapot.

  • Szálbiztonság: a fagyasztott Freezable objektumok megoszthatók a szálak között.

  • Részletes változásértesítés: A többi DependencyObject objektumtól eltérően az Freezable objektumok változásértesítéseket biztosítanak a tulajdonság altulajdonságainak módosításakor.

  • Egyszerű klónozás: a Fagyasztható osztály már számos olyan módszert implementált, amelyek mély klónokat hoznak létre.

A saját Freezable objektumok használatáról és létrehozásáról további információt a Fagyasztható objektumok áttekintése című témakörben talál.

Konstruktorok

Name Description
Freezable()

Egy származtatott osztály új példányának inicializálása Freezable .

Tulajdonságok

Name Description
CanFreeze

Olyan értéket kap, amely jelzi, hogy az objektum módosítható-e.

DependencyObjectType

Lekéri a DependencyObjectType példány CLR-típusát körbefuttatót.

(Öröklődés forrása DependencyObject)
Dispatcher

Lekérdezi, Dispatcher hogy ez a társítva van-e DispatcherObject .

(Öröklődés forrása DispatcherObject)
IsFrozen

Olyan értéket kap, amely jelzi, hogy az objektum jelenleg módosítható-e.

IsSealed

Olyan értéket kap, amely jelzi, hogy a példány jelenleg zárolva van-e (írásvédett).

(Öröklődés forrása DependencyObject)

Metódusok

Name Description
CheckAccess()

Meghatározza, hogy a hívó szál hozzáfér-e ehhez DispatcherObject.

(Öröklődés forrása DispatcherObject)
ClearValue(DependencyProperty)

Törli egy tulajdonság helyi értékét. A törölni kívánt tulajdonságot egy DependencyProperty azonosító határozza meg.

(Öröklődés forrása DependencyObject)
ClearValue(DependencyPropertyKey)

Törli egy írásvédett tulajdonság helyi értékét. A törölni kívánt tulajdonságot egy DependencyPropertyKey.

(Öröklődés forrása DependencyObject)
Clone()

Módosítható klónt hoz létre az Freezableobjektumról, amely az objektum értékeinek részletes másolatát készíti el. Az objektum függőségi tulajdonságainak másolásakor ez a metódus kifejezéseket másol (amelyek már nem oldhatók fel), de nem animációkat vagy azok aktuális értékeit.

CloneCore(Freezable)

A példányt a megadott Freezable klónként (mélymásolatként) hozza létre alap (nem animált) tulajdonságértékek használatával.

CloneCurrentValue()

Módosítható klónt (mély másolatot) hoz létre az Freezable aktuális értékek használatával.

CloneCurrentValueCore(Freezable)

A példányt módosítható klónként (mély másolatként) adja meg a megadott Freezable értékekkel.

CoerceValue(DependencyProperty)

A megadott függőségi tulajdonság értékét kényszeríti. Ez úgy érhető el, hogy meghívja a függőségi tulajdonság tulajdonság metaadataiban megadott függvényeket CoerceValueCallback a hívás DependencyObjectsorán.

(Öröklődés forrása DependencyObject)
CreateInstance()

Inicializálja a Freezable osztály új példányát.

CreateInstanceCore()

Ha egy származtatott osztályban implementálják, a származtatott osztály új példányát Freezable hozza létre.

Equals(Object)

Meghatározza, hogy a megadott DependencyObject érték megegyezik-e az aktuális DependencyObjectértékével.

(Öröklődés forrása DependencyObject)
Freeze()

Az aktuális objektum nem módosítható, és a tulajdonságát a következőre IsFrozenállítjatrue: .

Freeze(Freezable, Boolean)

Ha a isChecking paraméter az true, ez a módszer azt jelzi, hogy a megadott Freezable nem módosítható-e. Ha a isChecking paraméter az false, ez a metódus megkísérli a megadott nem módosíthatóvá tenni a megadott Freezable értéket, és jelzi, hogy a művelet sikeres volt-e.

FreezeCore(Boolean)

Freezable Az objektum nem módosíthatóvá válik, vagy teszteli, hogy módosítható-e.

GetAsFrozen()

Az alaptulajdonságok Freezable(nem animált) értékeinek egy fagyasztott másolatát hozza létre. Mivel a másolat le van fagyasztva, a program hivatkozással másolja a befagyott alobjektumokat.

GetAsFrozenCore(Freezable)

A példányt a megadott Freezable , alapszintű (nem animált) tulajdonságértékekkel zárolt klónává teszi.

GetCurrentValueAsFrozen()

Az aktuális tulajdonságértékek fagyasztott másolatát Freezable hozza létre. Mivel a másolat le van fagyasztva, a program hivatkozással másolja a befagyott alobjektumokat.

GetCurrentValueAsFrozenCore(Freezable)

Az aktuális példányt a megadott Freezablezárolt klónává teszi. Ha az objektum animált függőségi tulajdonságokkal rendelkezik, a program átmásolja az aktuális animált értékeket.

GetHashCode()

Ehhez lekéri a DependencyObjectkivonatkódot.

(Öröklődés forrása DependencyObject)
GetLocalValueEnumerator()

Létrehoz egy speciális enumerátort annak meghatározásához, hogy mely függőségi tulajdonságok rendelkeznek helyileg beállított értékekkel.DependencyObject

(Öröklődés forrása DependencyObject)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
GetValue(DependencyProperty)

Egy függőségi tulajdonság aktuális tényleges értékét adja vissza az adott példányon DependencyObject.

(Öröklődés forrása DependencyObject)
InvalidateProperty(DependencyProperty)

Újra kiértékeli a megadott függőségi tulajdonság tényleges értékét.

(Öröklődés forrása DependencyObject)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
OnChanged()

Az aktuális Freezable objektum módosításakor hívható meg.

OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Ez a tag támogatja a Windows megjelenítési alaprendszer (WPF) infrastruktúrát, és nem közvetlenül a kódból való használatra szolgál.

OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Biztosítja, hogy a megfelelő környezeti mutatók létre legyenek hozva az DependencyObjectType éppen beállított adattagok számára.

OnPropertyChanged(DependencyPropertyChangedEventArgs)

Felülbírálja a DependencyObject változó típusú függőségi tulajdonságra válaszul a kezelők meghívásának OnPropertyChanged(DependencyPropertyChangedEventArgs)Changedvégrehajtását Freezable is.

ReadLocalValue(DependencyProperty)

Egy függőségi tulajdonság helyi értékét adja vissza, ha létezik.

(Öröklődés forrása DependencyObject)
ReadPreamble()

Biztosítja, hogy a Freezable rendszer érvényes szálról legyen elérhető. A metódus öröklőinek Freezable minden olyan API elején meg kell hívniuk ezt a metódust, amely olyan adattagokat olvas be, amelyek nem függőségi tulajdonságok.

SetCurrentValue(DependencyProperty, Object)

Beállítja egy függőségi tulajdonság értékét az értékforrás módosítása nélkül.

(Öröklődés forrása DependencyObject)
SetValue(DependencyProperty, Object)

Beállítja egy függőségi tulajdonság helyi értékét, amelyet a függőségi tulajdonság azonosítója határoz meg.

(Öröklődés forrása DependencyObject)
SetValue(DependencyPropertyKey, Object)

Beállítja egy írásvédett függőség tulajdonság helyi értékét, amelyet a DependencyPropertyKey függőségi tulajdonság azonosítója határoz meg.

(Öröklődés forrása DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Olyan értéket ad vissza, amely jelzi, hogy a szerializálási folyamatok szerializálják-e a megadott függőségi tulajdonság értékét.

(Öröklődés forrása DependencyObject)
ToString()

Az aktuális objektumot jelképező sztringet ad vissza.

(Öröklődés forrása Object)
VerifyAccess()

Kényszeríti, hogy a hívószál hozzáférhessen ehhez.DispatcherObject

(Öröklődés forrása DispatcherObject)
WritePostscript()

Elindítja az Changed eseményt, Freezable és meghívja annak metódusát OnChanged() . A származtatott Freezable osztályoknak ezt a metódust minden olyan API végén kell meghívni, amely módosítja a nem függőségi tulajdonságokként tárolt osztálytagokat.

WritePreamble()

Ellenőrzi, hogy a Freezable rendszer nem zárolta-e a elemet, és hogy az érvényes szálkezelési környezetből van-e elérhető. Freezable Az öröklőknek ezt a metódust minden olyan API elején kell meghívni, amely nem függőségi tulajdonságokat tartalmazó adattagoknak ír.

esemény

Name Description
Changed

Akkor fordul elő, ha a Freezable benne lévő objektum vagy objektum módosul.

A következőre érvényes:

Szálbiztonság

Az ilyen típusú nyilvános static tagok szálbiztosak. A példánytagok nem garantáltan szálbiztosak.

Ha a IsFrozen tulajdonság az false, egy Freezable objektum csak abból a szálból érhető el, amelyen létrehozta. Ha megpróbál hozzáférni egy másik szálról, egy InvalidOperationException. A Invoke metódusok és BeginInvoke a metódusok támogatják a megfelelő szálra történő marsallást.

Ha a tulajdonságuk IsFrozen az, true az Freezableobjektumok szálmentesek lesznek. További információ: Fagyasztható objektumok áttekintése.