BitmapCache BitmapCache BitmapCache BitmapCache Class

Définition

Crée et met en cache une représentation de bitmap d'un UIElement.Creates and caches a bitmap representation of a UIElement.

public ref class BitmapCache sealed : System::Windows::Media::CacheMode
public sealed class BitmapCache : System.Windows.Media.CacheMode
type BitmapCache = class
    inherit CacheMode
Public NotInheritable Class BitmapCache
Inherits CacheMode
Héritage

Exemples

Le XAML suivant comment mettre en cache un Canvas élément.The following XAML shows how to cache a Canvas element. Pour l’exemple de code complet, consultez Comment : Améliorer les performances de rendu en mettant en cache un élément.For the complete code example, see How to: Improve Rendering Performance by Caching an Element.

<!-- //////////////////////////////////////////////////////////////// -->
<!-- // The following XAML creates a BitmapCache with default      // -->
<!-- // properties and assigns it as the CacheMode for the canvas. // -->
<!-- //////////////////////////////////////////////////////////////// -->
<Canvas.CacheMode>
    <BitmapCache EnableClearType="False" 
                 RenderAtScale="1" 
                 SnapsToDevicePixels="False"  />
</Canvas.CacheMode>

Remarques

Utilisez le BitmapCache classe afin d’améliorer les performances de rendu d’un type complexe UIElement.Use the BitmapCache class to improve rendering performance of a complex UIElement. Créer un BitmapCache et assignez-la à la CacheMode propriété d’un UIElement pour mettre en cache l’élément et son sous-arbre sous forme de bitmap en mémoire vidéo.Create a BitmapCache and assign it to the CacheMode property of a UIElement to cache the element and its subtree as a bitmap in video memory. Cela est utile lorsque vous devez animer, traduire ou mettre à l’échelle un UIElement aussi rapidement que possible.This is useful when you need to animate, translate, or scale a UIElement as quickly as possible. Cette approche permet un compromis entre performances et qualité visuelle pendant que le contenu est mis en cache.This approach enables a tradeoff between performance and visual quality while content is cached.

Utilisez la BitmapCacheBrush classe réutiliser efficacement un élément mis en cache.Use the BitmapCacheBrush class to efficiently reuse a cached element.

Définir le RenderAtScale propriété à l’échelle le cache de bitmap.Set the RenderAtScale property to scale the bitmap cache. Cela est utile si un élément sera un zoom avant, et que vous souhaitez que l’élément à restituer plus clairement qu’il le ferait si le cache était simplement généré à résolution native de l’élément.This is useful if an element will be zoomed, and you want the element to render more clearly than it would if the cache were simply generated at the element's native resolution.

Définir le SnapsToDevicePixels propriété lorsque le cache affiche un contenu qui requiert l’alignement des pixels rendue correctement, par exemple texte ClearType.Set the SnapsToDevicePixels property when the cache displays content that requires pixel-alignment to render correctly, such as ClearType text. Cette propriété est ignorée par le BitmapCacheBrush et Viewport2DVisual3D classes.This property is ignored by the BitmapCacheBrush and Viewport2DVisual3D classes.

La mise en cache d’un contrôle n’affecte pas le comportement de pointage avec la souris, le test de positionnement donc pointage avec la souris fonctionne comme s’il s’agissait de la bitmap un contrôle en direct.Caching a control does not affect mouse-over behavior, so mouse-over hit testing operates as if it the bitmap were a live control.

Régénération de cache se produit uniquement lorsque la structure de la UIElement ou sa sous-arborescence change, ou lorsque le CacheMode modification des paramètres.Cache regeneration occurs only when the structure of the UIElement or its subtree changes, or when the CacheMode settings change. Définition de la RenderAtScale ou EnableClearType causes de propriétés la régénération de cache.Setting the RenderAtScale or EnableClearType properties causes cache regeneration. Modifications apportées à l’arborescence visuelle du parent de la mise en cache UIElement, telles que les transformations, échelles, opacités et effets, n’affectent pas le cache.Changes to the parent visual tree of the cached UIElement, such as transforms, scales, opacities, and effects, do not affect the cache.

Les fonctions de cache lorsque l’accélération matérielle n’est pas disponible.The cache functions when hardware acceleration is not available. Dans ce cas, la bitmap est restituée dans le logiciel, et les dimensions de bitmap maximales sont 2048 x 2048.In this case, the bitmap is rendered in software, and the maximum bitmap dimensions are 2048 x 2048.

Notes

RenderOptions et TextOptions ne se propagent pas via un élément mis en cache.RenderOptions and TextOptions do not propagate through a cached element. Vous devrez peut-être définir ces options à nouveau dans les éléments enfants au-dessous du cache.You may have to set these options again in child elements below the cache.

Constructeurs

BitmapCache() BitmapCache() BitmapCache() BitmapCache()

Initialise une nouvelle instance de la classe BitmapCache.Initializes a new instance of the BitmapCache class.

BitmapCache(Double) BitmapCache(Double) BitmapCache(Double) BitmapCache(Double)

Initialise une nouvelle instance de la classe BitmapCache avec l'échelle spécifiée.Initializes a new instance of the BitmapCache class with the specified scale.

Champs

EnableClearTypeProperty EnableClearTypeProperty EnableClearTypeProperty EnableClearTypeProperty

Identifie la propriété de dépendance EnableClearType.Identifies the EnableClearType dependency property.

RenderAtScaleProperty RenderAtScaleProperty RenderAtScaleProperty RenderAtScaleProperty

Identifie la propriété de dépendance RenderAtScale.Identifies the RenderAtScale dependency property.

SnapsToDevicePixelsProperty SnapsToDevicePixelsProperty SnapsToDevicePixelsProperty SnapsToDevicePixelsProperty

Identifie la propriété de dépendance SnapsToDevicePixels.Identifies the SnapsToDevicePixels dependency property.

Propriétés

CanFreeze CanFreeze CanFreeze CanFreeze

Obtient une valeur qui indique si l’objet peut être rendu non modifiable.Gets a value that indicates whether the object can be made unmodifiable.

(Inherited from Freezable)
DependencyObjectType DependencyObjectType DependencyObjectType DependencyObjectType

Obtient le DependencyObjectType qui encapsule le type CLRCLR de cette instance.Gets the DependencyObjectType that wraps the CLRCLR type of this instance.

(Inherited from DependencyObject)
Dispatcher Dispatcher Dispatcher Dispatcher

Obtient le Dispatcher associé à DispatcherObject.Gets the Dispatcher this DispatcherObject is associated with.

(Inherited from DispatcherObject)
EnableClearType EnableClearType EnableClearType EnableClearType

Obtient ou définit une valeur qui indique si la bitmap est restituée avec ClearType activé.Gets or sets a value that indicates whether the bitmap is rendered with ClearType activated.

HasAnimatedProperties HasAnimatedProperties HasAnimatedProperties HasAnimatedProperties

Obtient une valeur qui indique si un ou plusieurs objets AnimationClock sont associés à l'une ou l'autre des propriétés de dépendance de cet objet.Gets a value that indicates whether one or more AnimationClock objects is associated with any of this object's dependency properties.

(Inherited from Animatable)
IsFrozen IsFrozen IsFrozen IsFrozen

Obtient une valeur qui indique si l’objet est actuellement modifiable.Gets a value that indicates whether the object is currently modifiable.

(Inherited from Freezable)
IsSealed IsSealed IsSealed IsSealed

Récupère une valeur qui indique si cette instance est actuellement sealed (en lecture seule).Gets a value that indicates whether this instance is currently sealed (read-only).

(Inherited from DependencyObject)
RenderAtScale RenderAtScale RenderAtScale RenderAtScale

Obtient ou définit une valeur qui indique l'échelle appliquée à la bitmap.Gets or sets a value that indicates the scale that is applied to the bitmap.

SnapsToDevicePixels SnapsToDevicePixels SnapsToDevicePixels SnapsToDevicePixels

Obtient ou définit une valeur qui indique si la bitmap est restituée avec l'alignement des pixels.Gets or sets a value that indicates whether the bitmap is rendered with pixel snapping.

Méthodes

ApplyAnimationClock(DependencyProperty, AnimationClock) ApplyAnimationClock(DependencyProperty, AnimationClock) ApplyAnimationClock(DependencyProperty, AnimationClock) ApplyAnimationClock(DependencyProperty, AnimationClock)

Applique AnimationClock au DependencyProperty spécifié.Applies an AnimationClock to the specified DependencyProperty. Si la propriété est déjà animée, le comportement de transfert SnapshotAndReplace est utilisé.If the property is already animated, the SnapshotAndReplace handoff behavior is used.

(Inherited from Animatable)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

Applique AnimationClock au DependencyProperty spécifié.Applies an AnimationClock to the specified DependencyProperty. Si la propriété spécifiée est déjà animée, le comportement HandoffBehavior spécifié est utilisé.If the property is already animated, the specified HandoffBehavior is used.

(Inherited from Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline) BeginAnimation(DependencyProperty, AnimationTimeline) BeginAnimation(DependencyProperty, AnimationTimeline) BeginAnimation(DependencyProperty, AnimationTimeline)

Applique une animation au DependencyProperty spécifié.Applies an animation to the specified DependencyProperty. L’animation est démarrée lors de la restitution de l’image suivante.The animation is started when the next frame is rendered. Si la propriété spécifiée est déjà animée, le comportement de transfert SnapshotAndReplace est utilisé.If the specified property is already animated, the SnapshotAndReplace handoff behavior is used.

(Inherited from Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Applique une animation au DependencyProperty spécifié.Applies an animation to the specified DependencyProperty. L’animation est démarrée lors de la restitution de l’image suivante.The animation is started when the next frame is rendered. Si la propriété spécifiée est déjà animée, le comportement HandoffBehavior spécifié est utilisé.If the specified property is already animated, the specified HandoffBehavior is used.

(Inherited from Animatable)
CheckAccess() CheckAccess() CheckAccess() CheckAccess()

Détermine si le thread appelant a accès à ce DispatcherObject.Determines whether the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)
ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty)

Efface la valeur locale d’une propriété.Clears the local value of a property. La propriété à effacer est spécifiée par un identificateur DependencyProperty.The property to be cleared is specified by a DependencyProperty identifier.

(Inherited from DependencyObject)
ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey)

Efface la valeur locale d’une propriété en lecture seule.Clears the local value of a read-only property. La propriété à effacer est spécifiée par DependencyPropertyKey.The property to be cleared is specified by a DependencyPropertyKey.

(Inherited from DependencyObject)
Clone() Clone() Clone() Clone()

Crée un clone modifiable de BitmapCache, en créant des copies complètes des valeurs de l’objet.Creates a modifiable clone of the BitmapCache, making deep copies of the object's values. Lors de la copie des propriétés de dépendance de l’objet, cette méthode copie les expressions (qui peuvent ne plus se résoudre), mais pas les animations ni leurs valeurs actuelles.When copying the object's dependency properties, this method copies expressions (which might no longer resolve) but not animations or their current values.

CloneCore(Freezable) CloneCore(Freezable) CloneCore(Freezable) CloneCore(Freezable)

Fait de l’instance un clone (copie complète) du Freezable spécifié utilisant des valeurs de propriété (non animée) de base.Makes the instance a clone (deep copy) of the specified Freezable using base (non-animated) property values.

(Inherited from Freezable)
CloneCurrentValue() CloneCurrentValue() CloneCurrentValue() CloneCurrentValue()

Crée un clone modifiable (copie complète) de BitmapCache en utilisant ses valeurs actuelles.Creates a modifiable clone (deep copy) of the BitmapCache using its current values.

CloneCurrentValueCore(Freezable) CloneCurrentValueCore(Freezable) CloneCurrentValueCore(Freezable) CloneCurrentValueCore(Freezable)

Fait de l’instance un clone (copie complète) modifiable du Freezable spécifié à l’aide des valeurs de propriété actuelles.Makes the instance a modifiable clone (deep copy) of the specified Freezable using current property values.

(Inherited from Freezable)
CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty)

Convertit la valeur de la propriété de dépendance spécifiée.Coerces the value of the specified dependency property. Pour cela, on appelle toute fonction CoerceValueCallback spécifiée dans les métadonnées de propriété pour la propriété de dépendance telle qu’elle existe sur le DependencyObject appelant.This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

(Inherited from DependencyObject)
CreateInstance() CreateInstance() CreateInstance() CreateInstance()

Initialise une nouvelle instance de la classe Freezable.Initializes a new instance of the Freezable class.

(Inherited from Freezable)
CreateInstanceCore() CreateInstanceCore() CreateInstanceCore() CreateInstanceCore()

Une fois implémentée dans une classe dérivée, initialise une nouvelle instance de la classe dérivée Freezable.When implemented in a derived class, creates a new instance of the Freezable derived class.

(Inherited from Freezable)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Détermine si un DependencyObject fourni est équivalent au DependencyObject réel.Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

(Inherited from DependencyObject)
Freeze() Freeze() Freeze() Freeze()

Rend l’objet actif non modifiable et attribue à sa propriété IsFrozen la valeur true.Makes the current object unmodifiable and sets its IsFrozen property to true.

(Inherited from Freezable)
FreezeCore(Boolean) FreezeCore(Boolean) FreezeCore(Boolean) FreezeCore(Boolean)

Rend cet objet Animatable non modifiable ou détermine s'il peut être rendu non modifiable.Makes this Animatable object unmodifiable or determines whether it can be made unmodifiable.

(Inherited from Animatable)
GetAnimationBaseValue(DependencyProperty) GetAnimationBaseValue(DependencyProperty) GetAnimationBaseValue(DependencyProperty) GetAnimationBaseValue(DependencyProperty)

Retourne la valeur non animée de la propriété DependencyProperty spécifiée.Returns the non-animated value of the specified DependencyProperty.

(Inherited from Animatable)
GetAsFrozen() GetAsFrozen() GetAsFrozen() GetAsFrozen()

Crée une copie figée de Freezable, à l'aide des valeurs de propriété (non-animées) de base.Creates a frozen copy of the Freezable, using base (non-animated) property values. Étant donné que la copie est figée, tous les sous-objets figés sont copiés par référence.Because the copy is frozen, any frozen sub-objects are copied by reference.

(Inherited from Freezable)
GetAsFrozenCore(Freezable) GetAsFrozenCore(Freezable) GetAsFrozenCore(Freezable) GetAsFrozenCore(Freezable)

Convertit l'instance en clone figé du Freezable spécifié à l'aide des valeurs de propriétés (non-animées) de base.Makes the instance a frozen clone of the specified Freezable using base (non-animated) property values.

(Inherited from Freezable)
GetCurrentValueAsFrozen() GetCurrentValueAsFrozen() GetCurrentValueAsFrozen() GetCurrentValueAsFrozen()

Crée une copie figée de Freezable à l'aide des valeurs de propriété actuelles.Creates a frozen copy of the Freezable using current property values. Étant donné que la copie est figée, tous les sous-objets figés sont copiés par référence.Because the copy is frozen, any frozen sub-objects are copied by reference.

(Inherited from Freezable)
GetCurrentValueAsFrozenCore(Freezable) GetCurrentValueAsFrozenCore(Freezable) GetCurrentValueAsFrozenCore(Freezable) GetCurrentValueAsFrozenCore(Freezable)

Convertit l'instance actuelle en un clone figé du Freezable spécifié.Makes the current instance a frozen clone of the specified Freezable. Si l'objet comporte des propriétés de dépendance animées, leurs valeurs animées actuelles sont copiées.If the object has animated dependency properties, their current animated values are copied.

(Inherited from Freezable)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Obtient un code de hachage pour ce DependencyObject.Gets a hash code for this DependencyObject.

(Inherited from DependencyObject)
GetLocalValueEnumerator() GetLocalValueEnumerator() GetLocalValueEnumerator() GetLocalValueEnumerator()

Cré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.Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject.

(Inherited from DependencyObject)
GetType() GetType() GetType() GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Inherited from Object)
GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty)

Retourne la valeur effective actuelle d’une propriété de dépendance sur cette instance d’un DependencyObject.Returns the current effective value of a dependency property on this instance of a DependencyObject.

(Inherited from DependencyObject)
InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty)

Réévalue la valeur effective pour la propriété de dépendance spécifiéeRe-evaluates the effective value for the specified dependency property

(Inherited from DependencyObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Inherited from Object)
OnChanged() OnChanged() OnChanged() OnChanged()

Appelé quand l’objet Freezable actuel est modifié.Called when the current Freezable object is modified.

(Inherited from Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject) OnFreezablePropertyChanged(DependencyObject, DependencyObject) OnFreezablePropertyChanged(DependencyObject, DependencyObject) OnFreezablePropertyChanged(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.Ensures that appropriate context pointers are established for a DependencyObjectType data member that has just been set.

(Inherited from Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Ce membre prend en charge l’infrastructure Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) et n’est pas destiné à être directement utilisé à partir de votre code.This member supports the Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) infrastructure and is not intended to be used directly from your code.

(Inherited from Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs)

Substitue l’implémentation DependencyObject de OnPropertyChanged(DependencyPropertyChangedEventArgs) pour appeler également tous les gestionnaires Changed en réponse à une propriété de dépendance variable de type Freezable.Overrides the DependencyObject implementation of OnPropertyChanged(DependencyPropertyChangedEventArgs) to also invoke any Changed handlers in response to a changing dependency property of type Freezable.

(Inherited from Freezable)
ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty)

Retourne la valeur locale d’une propriété de dépendance, si elle existe.Returns the local value of a dependency property, if it exists.

(Inherited from DependencyObject)
ReadPreamble() ReadPreamble() ReadPreamble() ReadPreamble()

Garantit que Freezable est accessible à partir d'un thread valide.Ensures that the Freezable is being accessed from a valid thread. Les héritiers de Freezable doivent appeler cette méthode au début de toute APIAPI lisant les membres de données qui ne sont pas des propriétés de dépendance.Inheritors of Freezable must call this method at the beginning of any APIAPI that reads data members that are not dependency properties.

(Inherited from Freezable)
SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object)

Définit la valeur d’une propriété de dépendance sans modifier sa valeur source.Sets the value of a dependency property without changing its value source.

(Inherited from DependencyObject)
SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object)

Définit la valeur locale d’une propriété de dépendance, spécifiée par son identificateur de propriété de dépendance.Sets the local value of a dependency property, specified by its dependency property identifier.

(Inherited from DependencyObject)
SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object)

Définit la valeur locale d’une propriété de dépendance en lecture seule, spécifiée par l’identificateur DependencyPropertyKey de la propriété de dépendance.Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

(Inherited from DependencyObject)
ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty)

Retourne une valeur qui indique si les processus de sérialisation doivent sérialiser la valeur de la propriété de dépendance fournie.Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property.

(Inherited from DependencyObject)
ToString() ToString() ToString() ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Inherited from Object)
VerifyAccess() VerifyAccess() VerifyAccess() VerifyAccess()

Garantit que le thread appelant a accès à DispatcherObject.Enforces that the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)
WritePostscript() WritePostscript() WritePostscript() WritePostscript()

Déclenche l’événement Changed pour le Freezable et appelle sa méthode OnChanged().Raises the Changed event for the Freezable and invokes its OnChanged() method. Les classes qui dérivent de Freezable doivent appeler cette méthode à la fin de toute API qui modifie des membres de classe qui ne sont pas stockés en tant que propriétés de dépendance.Classes that derive from Freezable should call this method at the end of any API that modifies class members that are not stored as dependency properties.

(Inherited from Freezable)
WritePreamble() WritePreamble() WritePreamble() WritePreamble()

Vérifie que le Freezable n'est pas figé et que son accès s'effectue à partir d'un contexte de thread valide.Verifies that the Freezable is not frozen and that it is being accessed from a valid threading context. Les héritiers de Freezable doivent appeler cette méthode au début de toute APIAPI écrivant les membres de données qui ne sont pas des propriétés de dépendance.Freezable inheritors should call this method at the beginning of any APIAPI that writes to data members that are not dependency properties.

(Inherited from Freezable)

Événements

Changed Changed Changed Changed

Se produit lorsque Freezable ou un objet qu'il contient est modifié.Occurs when the Freezable or an object it contains is modified.

(Inherited from Freezable)

S’applique à

Voir aussi