Comparteix a través de


RenderOptions.SetCachingHint(DependencyObject, CachingHint) Método

Definición

Establece el valor de la propiedad adjunta CachingHint de un objeto de dependencia especificado.

public:
 static void SetCachingHint(System::Windows::DependencyObject ^ target, System::Windows::Media::CachingHint cachingHint);
public static void SetCachingHint (System.Windows.DependencyObject target, System.Windows.Media.CachingHint cachingHint);
static member SetCachingHint : System.Windows.DependencyObject * System.Windows.Media.CachingHint -> unit
Public Shared Sub SetCachingHint (target As DependencyObject, cachingHint As CachingHint)

Parámetros

target
DependencyObject

Objeto de dependencia en el que se establecerá el valor de la propiedad CachingHint.

cachingHint
CachingHint

Nuevo valor en el que se va a establecer la propiedad.

Excepciones

El target especificado es null.

Ejemplos

En el ejemplo siguiente se muestra cómo usar la opción de sugerencia de almacenamiento en caché para .DrawingBrush

DrawingBrush drawingBrush = new DrawingBrush();
            
// Set the caching hint option for the brush.
RenderOptions.SetCachingHint(drawingBrush, CachingHint.Cache);

// Set the minimum and maximum relative sizes for regenerating the tiled brush.
// The tiled brush will be regenerated and re-cached when its size is
// 0.5x or 2x of the current cached size.
RenderOptions.SetCacheInvalidationThresholdMinimum(drawingBrush, 0.5);
RenderOptions.SetCacheInvalidationThresholdMaximum(drawingBrush, 2.0);
Dim drawingBrush As New DrawingBrush()

' Set the caching hint option for the brush.
RenderOptions.SetCachingHint(drawingBrush, CachingHint.Cache)

' Set the minimum and maximum relative sizes for regenerating the tiled brush.
' The tiled brush will be regenerated and re-cached when its size is
' 0.5x or 2x of the current cached size.
RenderOptions.SetCacheInvalidationThresholdMinimum(drawingBrush, 0.5)
RenderOptions.SetCacheInvalidationThresholdMaximum(drawingBrush, 2.0)

Comentarios

De forma predeterminada, WPF no almacena en caché el contenido representado de DrawingBrush los objetos y VisualBrush . En escenarios estáticos, donde ni el contenido ni el uso del pincel de la escena cambian, no el almacenamiento en caché proporciona una ventaja porque conserva la memoria de vídeo. Cuando se usa un pincel con contenido estático de forma no estática, el comportamiento predeterminado de WPF es volver a representar todo el contenido del pincel cada fotograma, aunque el contenido no cambie. Por ejemplo, esto ocurrirá cuando un objeto estático DrawingBrush o VisualBrush se asigna a la superficie de un objeto 3D giratorio. Volver a representar el contenido estático puede tener un impacto negativo en el rendimiento.

Al establecer la propiedad adjunta del pincel Cacheen , puede aumentar el CachingHint rendimiento mediante versiones almacenadas en caché de los objetos de pincel en mosaico.

Los CacheInvalidationThresholdMinimum valores de propiedad y CacheInvalidationThresholdMaximum son valores de tamaño relativo que determinan cuándo se debe volver a generar el TileBrush objeto debido a cambios en la escala. Por ejemplo, cuando la CacheInvalidationThresholdMaximum propiedad se establece en 2.0, la memoria caché de debe TileBrush volver a generarse solo cuando su tamaño supera dos veces el tamaño de la caché actual.

Utilice este método para establecer la CachingHint propiedad adjunta en el código.

Se aplica a

Consulte también