Esporta (0) Stampa
Espandi tutto

Metodo Freezable.GetCurrentValueAsFrozenCore

Aggiornamento: novembre 2007

Rende l’istanza corrente una copia bloccata di Freezablespecificato. Se l'oggetto ha proprietà di dipendenza animate, i valori animati correnti sono copiati.

Spazio dei nomi:  System.Windows
Assembly:  WindowsBase (in WindowsBase.dll)

protected virtual void GetCurrentValueAsFrozenCore(
	Freezable sourceFreezable
)
protected void GetCurrentValueAsFrozenCore(
	Freezable sourceFreezable
)
protected function GetCurrentValueAsFrozenCore(
	sourceFreezable : Freezable
)
Non è possibile utilizzare metodi in XAML.

Parametri

sourceFreezable
Tipo: System.Windows.Freezable

L'oggetto Freezable da copiare e bloccare.

Questo metodo viene chiamato dal metodo GetCurrentValueAsFrozen e non deve essere chiamato direttamente dal codice, tranne se viene chiamata l'implementazione di base durante l'esecuzione dell'override del metodo. Per creare una copia bloccata dell'oggetto corrente, chiamare GetCurrentValueAsFrozen, piuttosto che chiamare direttamente questo metodo.

Note per gli eredi:

Se si deriva da Freezable, può essere necessario eseguire l'override di questo metodo. Ragioni per l’override includono gli elementi seguenti:

  • La classe derivata ha dati che non sono esposti tramite proprietà di dipendenza.

  • La classe derivata deve eseguire il lavoro di inizializzazione aggiuntiva che non può essere portato a termine eseguendo semplicemente l'override di CreateInstanceCore. Ad esempio, questo si applica se la classe derivata implementa ISupportInitialize.

Classi che archiviano tutti i loro dati nelle proprietà di dipendenza e che non hanno bisogno di eseguire un lavoro aggiuntivo di inizializzazione non hanno bisogno di eseguire l'override di GetCurrentValueAsFrozenCore.

È essenziale che tutte le implementazioni chiamino l'implementazione di base di questo metodo. Le implementazioni devono eseguire solo il lavoro che non è eseguito dall'implementazione predefinita. L'implementazione predefinita crea un nuovo Freezable utilizzando il metodo CreateInstance e fa copie complete di freezable scongelati e copie fittizie di tutte le altre proprietà scrivibili e localmente impostate che contiene. Se l'oggetto ha proprietà di dipendenza di associazione dati, le associazioni dati sono copiate ma potrebbero non risolvere più; per ulteriori informazioni sugli oggetti duplicati associati a dati, vedere Cenni preliminari sugli oggetti Freezable. Se l'oggetto ha proprietà di dipendenza animate, il valore animato corrente di quelle proprietà è copiato, ma le animazioni non lo sono.

Proprietà della dipendenza di sola lettura all'interno di Freezable non sono copiate da questa implementazione predefinita.

Se si esegue l'override di questo metodo, è necessario chiamare l'implementazione di base.

Non si ha bisogno dei valori Freeze dato che sono copiati. Il risultato è bloccato da GetAsFrozen prima di essere restituito.

Windows Vista

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

.NET Framework

Supportato in: 3.5, 3.0

Aggiunte alla community

AGGIUNGI
Mostra:
© 2014 Microsoft