Freezable Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee definieert u een object met een wijzigbare status en een alleen-lezenstatus (geblokkeerd). Klassen die zijn afgeleid van Freezable een gedetailleerde wijzigingsmelding, kunnen onveranderbaar worden gemaakt en kunnen zichzelf klonen.
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
- Overname
- Afgeleid
Opmerkingen
De Freezable klasse biedt speciale functies waarmee de prestaties van toepassingen kunnen worden verbeterd bij het gebruik van objecten die duur zijn om te wijzigen of te kopiëren. Voorbeelden van Freezable objecten zijn onder andere:
Afgeleid van Freezable
Een klasse die is afgeleid van Freezable de volgende functies:
Speciale statussen: een alleen-lezenstatus (bevroren) en een beschrijfbare toestand.
Threadveiligheid: een geblokkeerd Freezable object kan worden gedeeld tussen threads.
Gedetailleerde wijzigingsmelding: In tegenstelling tot andere DependencyObject objecten biedt een Freezable object wijzigingsmeldingen wanneer subeigenschapswaarden worden gewijzigd.
Eenvoudig klonen: de Freezable-klasse heeft al verschillende methoden geïmplementeerd die diepe klonen produceren.
Zie Freezable voor informatie over het gebruik en maken van uw eigen objecten.
Constructors
| Name | Description |
|---|---|
| Freezable() |
Initialiseert een nieuw exemplaar van een Freezable afgeleide klasse. |
Eigenschappen
| Name | Description |
|---|---|
| CanFreeze |
Hiermee wordt een waarde opgehaald die aangeeft of het object onmodieerbaar kan worden gemaakt. |
| DependencyObjectType |
Hiermee haalt u het DependencyObjectType CLR-type van dit exemplaar op. (Overgenomen van DependencyObject) |
| Dispatcher |
Hiermee wordt de Dispatcher aan dit DispatcherObject gekoppelde bestand. (Overgenomen van DispatcherObject) |
| IsFrozen |
Hiermee wordt een waarde opgehaald die aangeeft of het object momenteel kan worden gewijzigd. |
| IsSealed |
Hiermee wordt een waarde opgehaald die aangeeft of dit exemplaar momenteel is verzegeld (alleen-lezen). (Overgenomen van DependencyObject) |
Methoden
| Name | Description |
|---|---|
| CheckAccess() |
Bepaalt of de aanroepende thread toegang heeft tot dit DispatcherObject. (Overgenomen van DispatcherObject) |
| ClearValue(DependencyProperty) |
Hiermee wist u de lokale waarde van een eigenschap. De eigenschap die moet worden gewist, wordt opgegeven door een DependencyProperty id. (Overgenomen van DependencyObject) |
| ClearValue(DependencyPropertyKey) |
Hiermee wist u de lokale waarde van een alleen-lezen eigenschap. De eigenschap die moet worden gewist, wordt opgegeven door een DependencyPropertyKey. (Overgenomen van DependencyObject) |
| Clone() |
Hiermee maakt u een wijzigbare kloon van de Freezable, waardoor diepe kopieën van de waarden van het object worden gemaakt. Bij het kopiëren van de eigenschappen van de afhankelijkheid van het object kopieert deze methode expressies (die mogelijk niet meer worden omgezet) maar niet animaties of hun huidige waarden. |
| CloneCore(Freezable) |
Hiermee wordt het exemplaar een kloon (diepe kopie) van de opgegeven Freezable met behulp van basiseigenschapswaarden (niet-geanimeerde waarden). |
| CloneCurrentValue() |
Hiermee maakt u een wijzigbare kloon (diepe kopie) van het gebruik van de Freezable huidige waarden. |
| CloneCurrentValueCore(Freezable) |
Maakt het exemplaar een wijzigbare kloon (diepe kopie) van de opgegeven Freezable met behulp van de huidige eigenschapswaarden. |
| CoerceValue(DependencyProperty) |
Hiermee wordt de waarde van de opgegeven afhankelijkheidseigenschap gecodeerd. Dit wordt bereikt door een CoerceValueCallback functie aan te roepen die is opgegeven in eigenschapsmetagegevens voor de afhankelijkheidseigenschap, zoals deze bestaat bij het aanroepen DependencyObject. (Overgenomen van DependencyObject) |
| CreateInstance() |
Initialiseert een nieuw exemplaar van de Freezable klasse. |
| CreateInstanceCore() |
Wanneer deze wordt geïmplementeerd in een afgeleide klasse, maakt u een nieuw exemplaar van de Freezable afgeleide klasse. |
| Equals(Object) |
Bepaalt of een opgegeven DependencyObject gelijk is aan de huidige DependencyObject. (Overgenomen van DependencyObject) |
| Freeze() |
Maakt het huidige object onmodifieerbaar en stelt de IsFrozen eigenschap ervan in op |
| Freeze(Freezable, Boolean) |
Als de |
| FreezeCore(Boolean) |
Maakt het Freezable object onmodifieerbaar of test of het kan worden onmodifieerbaar. |
| GetAsFrozen() |
Hiermee maakt u een geblokkeerde kopie van de Freezableeigenschapswaarden met basiswaarden (niet-geanimeerd). Omdat de kopie is geblokkeerd, worden alle geblokkeerde subobjecten gekopieerd met verwijzing. |
| GetAsFrozenCore(Freezable) |
Hiermee wordt het exemplaar een geblokkeerde kloon van de opgegeven Freezable met behulp van basiseigenschapswaarden (niet-geanimeerd). |
| GetCurrentValueAsFrozen() |
Hiermee maakt u een geblokkeerde kopie van het Freezable gebruik van de huidige eigenschapswaarden. Omdat de kopie is geblokkeerd, worden alle geblokkeerde subobjecten gekopieerd met verwijzing. |
| GetCurrentValueAsFrozenCore(Freezable) |
Hiermee wordt het huidige exemplaar een geblokkeerde kloon van de opgegeven Freezable. Als het object eigenschappen van afhankelijkheid met animatie heeft, worden de huidige geanimeerde waarden gekopieerd. |
| GetHashCode() |
Hiermee haalt u een hashcode op.DependencyObject (Overgenomen van DependencyObject) |
| GetLocalValueEnumerator() |
Hiermee maakt u een gespecialiseerde enumerator om te bepalen welke afhankelijkheidseigenschappen lokaal waarden hebben ingesteld.DependencyObject (Overgenomen van DependencyObject) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| GetValue(DependencyProperty) |
Retourneert de huidige effectieve waarde van een afhankelijkheidseigenschap op dit exemplaar van een DependencyObject. (Overgenomen van DependencyObject) |
| InvalidateProperty(DependencyProperty) |
Evalueert de effectieve waarde voor de opgegeven afhankelijkheidseigenschap opnieuw. (Overgenomen van DependencyObject) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| OnChanged() |
Aangeroepen wanneer het huidige Freezable object wordt gewijzigd. |
| OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) |
Dit lid ondersteunt de Windows Presentation Foundation -infrastructuur (WPF) en is niet bedoeld om rechtstreeks vanuit uw code te worden gebruikt. |
| OnFreezablePropertyChanged(DependencyObject, DependencyObject) |
Zorgt ervoor dat de juiste contextpointers tot stand worden gebracht voor een DependencyObjectType gegevenslid dat zojuist is ingesteld. |
| OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Overschrijft de DependencyObject implementatie van het aanroepen OnPropertyChanged(DependencyPropertyChangedEventArgs) van Changed handlers als reactie op een veranderende afhankelijkheidseigenschap van het typeFreezable. |
| ReadLocalValue(DependencyProperty) |
Retourneert de lokale waarde van een afhankelijkheidseigenschap, als deze bestaat. (Overgenomen van DependencyObject) |
| ReadPreamble() |
Zorgt ervoor dat de Freezable thread wordt geopend vanuit een geldige thread. Overnames van Freezable deze methode moeten aan het begin van een API worden aangeroepen die gegevensleden leest die geen afhankelijkheidseigenschappen zijn. |
| SetCurrentValue(DependencyProperty, Object) |
Hiermee stelt u de waarde van een afhankelijkheidseigenschap in zonder de waardebron te wijzigen. (Overgenomen van DependencyObject) |
| SetValue(DependencyProperty, Object) |
Hiermee stelt u de lokale waarde van een afhankelijkheidseigenschap in, die is opgegeven door de id van de afhankelijkheidseigenschap. (Overgenomen van DependencyObject) |
| SetValue(DependencyPropertyKey, Object) |
Hiermee stelt u de lokale waarde van een alleen-lezen afhankelijkheidseigenschap in, die is opgegeven door de DependencyPropertyKey id van de afhankelijkheidseigenschap. (Overgenomen van DependencyObject) |
| ShouldSerializeProperty(DependencyProperty) |
Retourneert een waarde die aangeeft of serialisatieprocessen de waarde voor de opgegeven afhankelijkheidseigenschap moeten serialiseren. (Overgenomen van DependencyObject) |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
| VerifyAccess() |
Hiermee wordt afgedwongen dat de aanroepende thread toegang heeft tot dit DispatcherObject. (Overgenomen van DispatcherObject) |
| WritePostscript() |
Hiermee wordt de gebeurtenis voor de Changed gebeurtenis gegenereerd en wordt Freezable de OnChanged() methode aangeroepen. Klassen die zijn afgeleid van Freezable , moeten deze methode aan het einde van een API aanroepen die klasseleden wijzigt die niet zijn opgeslagen als afhankelijkheidseigenschappen. |
| WritePreamble() |
Controleert of het Freezable niet is geblokkeerd en of deze wordt geopend vanuit een geldige threadingcontext. Freezable overnemers moeten deze methode aan het begin van een API aanroepen die schrijft naar gegevensleden die geen afhankelijkheidseigenschappen zijn. |
gebeurtenis
| Name | Description |
|---|---|
| Changed |
Treedt op wanneer het Freezable object dat het bevat, wordt gewijzigd. |
Van toepassing op
Veiligheid thread
static Openbare leden van dit type zijn thread-veilig. Exemplaarleden zijn niet gegarandeerd thread-safe.
Wanneer de IsFrozen eigenschap is false, kan een Freezable object alleen worden geopend vanuit de thread waarop deze is gemaakt. Een poging om er toegang toe te krijgen vanuit een andere thread genereert een InvalidOperationException. De Invoke en BeginInvoke methoden bieden ondersteuning voor marshaling aan de juiste thread.
Wanneer de IsFrozen eigenschap is true, Freezable worden objecten vrij threaded. Zie Overzicht van Freezable Objects voor meer informatie.