Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

Freezable, classe

Définit un objet qui a un état modifiable et un état en lecture seule (figé). Les classes qui dérivent de Freezable fournissent une notification de modifications détaillée, peuvent être rendues immuables et peuvent être clonées.

Espace de noms :  System.Windows
Assembly :  WindowsBase (dans WindowsBase.dll)
public abstract class Freezable : DependencyObject

Le type Freezable expose les membres suivants.

  NomDescription
Méthode protégéeFreezableInitialise une nouvelle instance d'une classe dérivée de Freezable.
Début
  NomDescription
Propriété publiqueCanFreezeObtient une valeur qui indique la possibilité ou non de rendre un objet non modifiable.
Propriété publiqueDependencyObjectTypeObtient le DependencyObjectType qui encapsule le type CLR de cette instance.  (Hérité de DependencyObject.)
Propriété publiqueDispatcherObtient le Dispatcher associé à DispatcherObject. (Hérité de DispatcherObject.)
Propriété publiqueIsFrozenObtient une valeur qui indique si l'objet est actuellement modifiable ou pas.
Propriété publiqueIsSealedRécupère une valeur qui indique si cette instance est actuellement sealed (en lecture seule). (Hérité de DependencyObject.)
Début
  NomDescription
Méthode publiqueCheckAccessDétermine si le thread appelant a accès à ce DispatcherObject. (Hérité de DispatcherObject.)
Méthode publiqueClearValue(DependencyProperty)Efface la valeur de proximité d'une propriété. La propriété à effacer est spécifiée par un identificateur DependencyProperty. (Hérité de DependencyObject.)
Méthode publiqueClearValue(DependencyPropertyKey)Efface la valeur de proximité d'une propriété en lecture seule. La propriété à effacer est spécifiée par un DependencyPropertyKey. (Hérité de DependencyObject.)
Méthode publiqueCloneCrée un clone modifiable de Freezable, en créant des copies complètes des valeurs de l'objet. Lors de la copie des propriétés de dépendance de l'objet, cette méthode copie les expressions (qui risquent de ne plus pouvoir se résoudre) mais pas les animations ou leurs valeurs actuelles.
Méthode protégéeCloneCoreConvertit l'instance en clone (copie complète) du Freezable spécifié à l'aide des valeurs de propriétés (non-animées) de base.
Méthode publiqueCloneCurrentValueCrée un clone modifiable (copie complète) de Freezable en utilisant ses valeurs actuelles.
Méthode protégéeCloneCurrentValueCoreConvertit l'instance en clone modifiable (copie complète) du Freezable spécifié à l'aide des valeurs de propriétés actuelles.
Méthode publiqueCoerceValueForce la valeur de la propriété de dépendance spécifiée. Cette opération est accomplie en appelant toute fonction CoerceValueCallback spécifiée dans les métadonnées de propriété pour la propriété de dépendance comme elle existe sur le DependencyObject appelant. (Hérité de DependencyObject.)
Méthode protégéeCreateInstanceInitialise une nouvelle instance de la classe Freezable.
Méthode protégéeCreateInstanceCoreUne fois implémentée dans une classe dérivée, initialise une nouvelle instance de la classe dérivée Freezable.
Méthode publiqueEqualsDétermine si un DependencyObject fourni est équivalent au DependencyObject réel. (Hérité de DependencyObject.)
Méthode protégéeFinalize Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)
Méthode publiqueFreeze()Rend l'objet actuel non modifiable et définit sa propriété IsFrozen sur true.
Méthode protégéeMembre statiqueFreeze(Freezable, Boolean)Si le paramètre isChecking est true, cette méthode indique si le Freezable spécifié peut être rendu non modifiable ou pas. Si le paramètre isChecking est false, cette méthode essaie de rendre le Freezable spécifié non modifiable et indique si l'opération a réussi.
Méthode protégéeFreezeCoreRend l'objet Freezable non modifiable ou vérifie si celui-ci peut être rendu non modifiable ou pas.
Méthode publiqueGetAsFrozenCrée une copie figée de Freezable, à l'aide des valeurs de propriété (non-animées) de base. Étant donné que la copie est figée, tous les sous-objets figés sont copiés par référence.
Méthode protégéeGetAsFrozenCoreConvertit l'instance en clone figé du Freezable spécifié à l'aide des valeurs de propriétés (non-animées) de base.
Méthode publiqueGetCurrentValueAsFrozenCrée une copie figée de Freezable à l'aide des valeurs de propriété actuelles. Étant donné que la copie est figée, tous les sous-objets figés sont copiés par référence.
Méthode protégéeGetCurrentValueAsFrozenCoreConvertit l'instance actuelle en un clone figé du Freezable spécifié. Si l'objet comporte des propriétés de dépendance animées, leurs valeurs animées actuelles sont copiées.
Méthode publiqueGetHashCodeObtient un code de hachage pour ce DependencyObject. (Hérité de DependencyObject.)
Méthode publiqueGetLocalValueEnumeratorCrée un énumérateur spécialisé pour déterminer quelles propriétés de dépendance ont des valeurs définies localement sur ce DependencyObject. (Hérité de DependencyObject.)
Méthode publiqueGetTypeObtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode publiqueGetValueRetourne la valeur effective actuelle d'une propriété de dépendance sur cette instance d'un DependencyObject. (Hérité de DependencyObject.)
Méthode publiqueInvalidatePropertyRéévalue la valeur effective pour la propriété de dépendance spécifiée (Hérité de DependencyObject.)
Méthode protégéeMemberwiseCloneCrée une copie superficielle de l'objet Object actuel. (Hérité de Object.)
Méthode protégéeOnChangedAppelé lors de la modification de l'objet Freezable actuel.
Méthode protégéeOnFreezablePropertyChanged(DependencyObject, DependencyObject)Garantit que les pointeurs de contexte appropriés sont établis pour un membre de données de type DependencyObjectType qui vient juste d'être défini.
Méthode protégéeOnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)Ce membre prend en charge l'infrastructure Windows Presentation Foundation (WPF) et n'est pas conçu pour être directement utilisé à partir du code.
Méthode protégéeOnPropertyChangedSubstitue l'implémentation DependencyObject de OnPropertyChanged pour appeler également tous les gestionnaires Changed en réponse à une propriété de dépendance variable de type Freezable. (Substitue DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs).)
Méthode publiqueReadLocalValueRetourne la valeur de proximité d'une propriété de dépendance, si elle existe. (Hérité de DependencyObject.)
Méthode protégéeReadPreambleGarantit que Freezable est accessible à partir d'un thread valide. Les héritiers de Freezable doivent appeler cette méthode au début de toute API lisant les membres de données qui ne sont pas des propriétés de dépendance.
Méthode publiqueSetCurrentValueDéfinit la valeur d'une propriété de dépendance sans modifier sa source de valeur. (Hérité de DependencyObject.)
Méthode publiqueSetValue(DependencyProperty, Object)Définit la valeur de proximité d'une propriété de dépendance, spécifiée par son identificateur de propriété de dépendance. (Hérité de DependencyObject.)
Méthode publiqueSetValue(DependencyPropertyKey, Object)Définit la valeur de proximité d'une propriété de dépendance en lecture seule, spécifiée par l'identificateur DependencyPropertyKey de la propriété de dépendance. (Hérité de DependencyObject.)
Méthode protégéeShouldSerializePropertyRetourne une valeur qui indique si les processus de sérialisation doivent sérialiser la valeur pour la propriété de dépendance fournie. (Hérité de DependencyObject.)
Méthode publiqueToStringRetourne une chaîne qui représente l'objet actuel. (Hérité de Object.)
Méthode publiqueVerifyAccessGarantit que le thread appelant a accès à DispatcherObject. (Hérité de DispatcherObject.)
Méthode protégéeWritePostscriptDéclenche l'événement Changed pour Freezable et appelle sa méthode OnChanged. Les classes qui dérivent de Freezable doivent appeler cette méthode à la fin de toute API qui modifie des membres de classe non stockés en tant que propriétés de dépendance.
Méthode protégéeWritePreambleVérifie que le Freezable n'est pas figé et que son accès s'effectue à partir d'un contexte de thread valide. Les héritiers de Freezable doivent appeler cette méthode au début de toute API écrivant les membres de données qui ne sont pas des propriétés de dépendance.
Début
  NomDescription
Événement publicChangedSe produit lorsque Freezable ou un objet qu'il contient est modifié.
Début

La classe Freezable fournit des fonctionnalités spéciales pouvant aider à améliorer les performances d'application lors de l'utilisation d'objets coûteux à modifier ou à copier. Voici quelques exemples d'objets Freezable :

Dérivation de Freezable

Une classe qui dérive de Freezable acquiert les fonctionnalités suivantes :

  • États spéciaux : un état en lecture seule (figé) et un état d'écriture.

  • Sécurité des threads : un objet Freezable figé peut être partagé entre plusieurs threads.

  • Notification de modifications détaillée : contrairement à d'autres objets DependencyObject, un objet Freezable fournit des notifications de modifications lorsque les valeurs de sous-propriété sont modifiées.

  • Clonage facile : la classe Freezable a déjà implémenté plusieurs méthodes qui génèrent des clones complets.

Pour plus d'informations sur l'utilisation et la création de vos propres objets Freezable, consultez Vue d'ensemble des objets Freezable.

.NET Framework

Pris en charge dans : 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Tous les membres static publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Lorsque la propriété IsFrozen est false, un objet Freezable est uniquement accessible à partir du thread sur lequel il a été créé. Toute tentative d'y accéder à partir d'un autre thread lève une InvalidOperationException. Les méthodes Dispatcher.Invoke et Dispatcher.BeginInvoke fournissent une prise en charge pour marshaler vers le thread correct.

Lorsque leur propriété IsFrozen est true, les objets Freezable sont libres de threads. Pour plus d'informations, consultez Vue d'ensemble des objets Freezable.

System.Object
  System.Windows.Threading.DispatcherObject
    System.Windows.DependencyObject
      System.Windows.Freezable
        System.Windows.Controls.Ribbon.RibbonControlSizeDefinition
        System.Windows.Controls.Ribbon.RibbonGroupSizeDefinitionBase
        System.Windows.Input.InputBinding
        System.Windows.Media.Animation.Animatable
        System.Windows.Media.Animation.BooleanKeyFrame
        System.Windows.Media.Animation.BooleanKeyFrameCollection
        System.Windows.Media.Animation.ByteKeyFrame
        System.Windows.Media.Animation.ByteKeyFrameCollection
        System.Windows.Media.Animation.CharKeyFrame
        System.Windows.Media.Animation.CharKeyFrameCollection
        System.Windows.Media.Animation.ColorKeyFrame
        System.Windows.Media.Animation.ColorKeyFrameCollection
        System.Windows.Media.Animation.DecimalKeyFrame
        System.Windows.Media.Animation.DecimalKeyFrameCollection
        System.Windows.Media.Animation.DoubleKeyFrame
        System.Windows.Media.Animation.DoubleKeyFrameCollection
        System.Windows.Media.Animation.EasingFunctionBase
        System.Windows.Media.Animation.Int16KeyFrame
        System.Windows.Media.Animation.Int16KeyFrameCollection
        System.Windows.Media.Animation.Int32KeyFrame
        System.Windows.Media.Animation.Int32KeyFrameCollection
        System.Windows.Media.Animation.Int64KeyFrame
        System.Windows.Media.Animation.Int64KeyFrameCollection
        System.Windows.Media.Animation.KeySpline
        System.Windows.Media.Animation.MatrixKeyFrame
        System.Windows.Media.Animation.MatrixKeyFrameCollection
        System.Windows.Media.Animation.ObjectKeyFrame
        System.Windows.Media.Animation.ObjectKeyFrameCollection
        System.Windows.Media.Animation.Point3DKeyFrame
        System.Windows.Media.Animation.Point3DKeyFrameCollection
        System.Windows.Media.Animation.PointKeyFrame
        System.Windows.Media.Animation.PointKeyFrameCollection
        System.Windows.Media.Animation.QuaternionKeyFrame
        System.Windows.Media.Animation.QuaternionKeyFrameCollection
        System.Windows.Media.Animation.RectKeyFrame
        System.Windows.Media.Animation.RectKeyFrameCollection
        System.Windows.Media.Animation.Rotation3DKeyFrame
        System.Windows.Media.Animation.Rotation3DKeyFrameCollection
        System.Windows.Media.Animation.SingleKeyFrame
        System.Windows.Media.Animation.SingleKeyFrameCollection
        System.Windows.Media.Animation.SizeKeyFrame
        System.Windows.Media.Animation.SizeKeyFrameCollection
        System.Windows.Media.Animation.StringKeyFrame
        System.Windows.Media.Animation.StringKeyFrameCollection
        System.Windows.Media.Animation.ThicknessKeyFrame
        System.Windows.Media.Animation.ThicknessKeyFrameCollection
        System.Windows.Media.Animation.Vector3DKeyFrame
        System.Windows.Media.Animation.Vector3DKeyFrameCollection
        System.Windows.Media.Animation.VectorKeyFrame
        System.Windows.Media.Animation.VectorKeyFrameCollection
        System.Windows.Media.DoubleCollection
        System.Windows.Media.ImageMetadata
        System.Windows.Media.Int32Collection
        System.Windows.Media.Media3D.GeneralTransform2DTo3D
        System.Windows.Media.Media3D.GeneralTransform3DTo2D
        System.Windows.Media.Media3D.Point3DCollection
        System.Windows.Media.Media3D.Vector3DCollection
        System.Windows.Media.PointCollection
        System.Windows.Media.VectorCollection
        System.Windows.Shell.TaskbarItemInfo
        System.Windows.Shell.ThumbButtonInfo
        System.Windows.Shell.WindowChrome
Cela vous a-t-il été utile ?
(1500 caractères restants)

Ajouts de la communauté

AJOUTER
© 2013 Microsoft. Tous droits réservés.