Freezable.GetCurrentValueAsFrozenCore(Freezable) Methode
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 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.
protected:
virtual void GetCurrentValueAsFrozenCore(System::Windows::Freezable ^ sourceFreezable);
protected virtual void GetCurrentValueAsFrozenCore(System.Windows.Freezable sourceFreezable);
abstract member GetCurrentValueAsFrozenCore : System.Windows.Freezable -> unit
override this.GetCurrentValueAsFrozenCore : System.Windows.Freezable -> unit
Protected Overridable Sub GetCurrentValueAsFrozenCore (sourceFreezable As Freezable)
Parameters
Opmerkingen
Deze methode wordt aangeroepen door de GetCurrentValueAsFrozen methode en mag niet rechtstreeks vanuit uw code worden aangeroepen, behalve bij het aanroepen van de basis-implementatie tijdens het overschrijven van deze methode. Als u een geblokkeerde kopie van het huidige object wilt maken, roept GetCurrentValueAsFrozen u deze methode aan in plaats van deze methode rechtstreeks aan te roepen.
Notities voor overnemers
Als u afgeleid bent van Freezable, moet u deze methode mogelijk overschrijven. Redenen om te overschrijven zijn onder andere:
Uw afgeleide klasse bevat gegevens die niet beschikbaar zijn via afhankelijkheidseigenschappen.
Uw afgeleide klasse moet extra initialisatiewerkzaamheden uitvoeren die niet kunnen worden uitgevoerd door simpelweg te overschrijven CreateInstanceCore(). Dit is bijvoorbeeld van toepassing als uw afgeleide klasse implementeert ISupportInitialize.
Klassen die al hun gegevens opslaan in afhankelijkheidseigenschappen en die geen extra initialisatiewerkzaamheden hoeven uit te voeren, hoeven niet te worden overschreven GetCurrentValueAsFrozenCore(Freezable).
Het is essentieel dat alle implementaties de basisuitvoering van deze methode aanroepen. Implementaties mogen alleen werk uitvoeren dat niet wordt uitgevoerd door de standaard implementatie. De standaard implementatie maakt een nieuwe Freezable met behulp van de CreateInstance() methode en maakt diepe kopieën van unfrozen freezables en ondiepe kopieën van alle andere schrijfbare, lokaal ingestelde eigenschappen die het bevat. Als het object gegevensgebonden afhankelijkheidseigenschappen heeft, worden de gegevensbindingen gekopieerd, maar worden deze mogelijk niet meer omgezet; Zie Overzicht van Freezable Objects voor meer informatie over het klonen van gegevensgebonden objecten. Als het object afhankelijkheidseigenschappen met animatie heeft, wordt de huidige waarde van deze eigenschappen gekopieerd, maar de animaties niet.
Eigenschappen van alleen-lezenafhankelijkheid in een Freezable worden niet gekopieerd door deze standaard implementatie.
Als u deze methode overschrijft, moet u de basis-implementatie aanroepen.
U hoeft geen waarden te Freeze() gebruiken wanneer ze worden gekopieerd. Het resultaat wordt geblokkeerd voordat GetAsFrozen() het wordt geretourneerd.