CachingHint CachingHint CachingHint CachingHint Enum

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

Felder

Cache Cache Cache 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 Unspecified Unspecified Unspecified 0

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

Beispiele

Das folgende Beispiel zeigt, wie Sie mit die Zwischenspeicherungshinweisoption für eine 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

In der Standardeinstellung WPFWPF zwischenspeichert, wenn der gerenderte Inhalt von DrawingBrush und VisualBrush Objekte.By default, WPFWPF does not cache the rendered contents of DrawingBrush and VisualBrush objects. In statischen Szenarien, in denen weder der Inhalt noch die Verwendung des Pinsels in der Szene ändert, nicht Cache ermöglicht einen Vorteil da Videospeicher gespart wird.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 das Standardverhalten verwendet WPFWPF ist, den gesamten Inhalt des Pinsels wieder jeden Frame, selbst wenn der Inhalt unverändert bleibt.When a brush with static content is used in a non-static way, the default behavior of WPFWPF is to re-render the entire content of the brush every frame, even though the content is unchanging. Angenommen, dies geschieht, wenn eine statische DrawingBrush oder VisualBrush der Oberfläche eines sich drehenden 3D-Objekts zugeordnet ist.For example, this will happen when a static DrawingBrush or VisualBrush is mapped to the surface of a rotating 3D object. Den statischen Inhalt erneut zu rendern kann sich negativ auf die Leistung auswirken.Re-rendering the static content can have a negative impact on performance.

Durch Festlegen der CachingHint angefügte Eigenschaft des Pinsels auf Cache können Sie Leistung erhöhen, indem zwischengespeicherten Versionen der gekachelten Pinselobjekte.By setting the CachingHint attached property on the brush to Cache, you can increase performance by using cached versions of the tiled brush objects.

Die CacheInvalidationThresholdMinimum und CacheInvalidationThresholdMaximum Werte sind Werte von relativer Größe, die bestimmen, wann das TileBrush -Objekt aufgrund einer geänderten Skalierung neu generiert werden sollte.The CacheInvalidationThresholdMinimum and CacheInvalidationThresholdMaximum property values are relative size values that determine when the TileBrush object should be regenerated due to changes in scale. Z. B. durch Festlegen der CacheInvalidationThresholdMaximum Eigenschaft auf 2.0, den Cache für die TileBrush nur neu generiert werden, überschreitet die Größe zweimal die Größe des aktuellen Caches.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