CachingHint Enumeration

Definition

Gibt an, ob gekachelte Pinselobjekte zwischengespeichert werden sollen.Specifies whether to cache tiled brush objects.

public enum class CachingHint
public enum CachingHint
type CachingHint = 
Public Enum CachingHint
Vererbung
CachingHint

Felder

Cache 1

Führt eine Zwischenspeicherung der gekachelten Pinselobjekte unter Verwendung der von den RenderOptions-Einstellungen angegebenen Zwischenspeicherungshinweise in einem Offscreenpuffer aus.Cache the tiled brush objects in an off-screen buffer, using the caching hints specified by the RenderOptions settings.

Unspecified 0

Es werden keine Zwischenspeicherungshinweise angegeben.No caching hints are specified.

Beispiele

Im folgenden Beispiel wird gezeigt, wie die Option Caching Hint für einen verwendet wird DrawingBrush .The following example shows how to use the caching hint option for a 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)

Hinweise

Standardmäßig speichert WPF den gerenderten Inhalt von DrawingBrush -Objekten und-Objekten nicht zwischen VisualBrush .By default, WPF does not cache the rendered contents of DrawingBrush and VisualBrush objects. In statischen Szenarios, in denen weder der Inhalt noch die Verwendung des Pinsels in der Szene geändert wird, bietet das Caching keinen Vorteil, da es Videospeicher bietet.In static scenarios where neither the contents nor the use of the brush in the scene is changing, not caching provides a benefit because it conserves video memory. Wenn ein Pinsel mit statischem Inhalt auf nicht statische Weise verwendet wird, besteht das Standardverhalten von WPF darin, den gesamten Inhalt des Pinsels jedes Frame wiederzugeben, auch wenn sich der Inhalt ändert.When a brush with static content is used in a non-static way, the default behavior of WPF is to re-render the entire content of the brush every frame, even though the content is unchanging. Dies geschieht z. b., wenn ein statisches DrawingBrush or VisualBrush der Oberfläche eines rotierenden 3D-Objekts zugeordnet wird.For example, this will happen when a static DrawingBrush or VisualBrush is mapped to the surface of a rotating 3D object. Das erneute Rendern des statischen Inhalts kann sich negativ auf die Leistung auswirken.Re-rendering the static content can have a negative impact on performance.

Durch Festlegen der CachingHint angefügten-Eigenschaft für den Pinsel auf Cache können Sie die Leistung mithilfe von zwischengespeicherten Versionen der gekachelten Pinsel Objekte steigern.By setting the CachingHint attached property on the brush to Cache, you can increase performance by using cached versions of the tiled brush objects.

Der CacheInvalidationThresholdMinimum - CacheInvalidationThresholdMaximum Eigenschafts Wert und der-Eigenschafts Wert sind relative Größen Werte, die bestimmen, wann das TileBrush Objekt aufgrund von Skalierungs Änderungen neu generiert werden soll.The CacheInvalidationThresholdMinimum and CacheInvalidationThresholdMaximum property values are relative size values that determine when the TileBrush object should be regenerated due to changes in scale. Wenn Sie z. b. die- CacheInvalidationThresholdMaximum Eigenschaft auf 2,0 festlegen, muss der Cache für TileBrush nur neu generiert werden, wenn seine Größe die doppelte Größe des aktuellen Caches überschreitet.For example, by setting the CacheInvalidationThresholdMaximum property to 2.0, the cache for the TileBrush only needs to be regenerated when its size exceeds twice the size of the current cache.

Gilt für:

Siehe auch