Freigeben über


RenderOptions.SetCachingHint(DependencyObject, CachingHint) Methode

Definition

Legt den Wert der angefügten CachingHint-Eigenschaft für ein angegebenes Abhängigkeitsobjekt fest.

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)

Parameter

target
DependencyObject

Das Abhängigkeitsobjekt, für das der Wert der CachingHint-Eigenschaft festgelegt werden soll.

cachingHint
CachingHint

Der neue Wert, auf den die Eigenschaft festgelegt werden soll.

Ausnahmen

Der angegebene target ist gleich null.

Beispiele

Im folgenden Beispiel wird die Verwendung der Option für Zwischenspeicherhinweise für einen DrawingBrush gezeigt.

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 die gerenderten Inhalte von DrawingBrush - und VisualBrush -Objekten nicht zwischen. In statischen Szenarien, in denen sich weder der Inhalt noch die Verwendung des Pinsels in der Szene ändern, bietet das Zwischenspeichern einen Vorteil, da der Videospeicher gespart wird. Wenn ein Pinsel mit statischem Inhalt nicht statisch verwendet wird, besteht das Standardverhalten von WPF darin, den gesamten Inhalt des Pinsels bei jedem Frame neu zu rendern, obwohl der Inhalt unverändert ist. Dies geschieht beispielsweise, wenn ein statisches DrawingBrush oder VisualBrush der Oberfläche eines sich drehenden 3D-Objekts zugeordnet wird. Das erneute Rendern des statischen Inhalts kann sich negativ auf die Leistung auswirken.

Wenn Sie die CachingHint angefügte Eigenschaft des Pinsels auf Cachefestlegen, können Sie die Leistung erhöhen, indem Sie zwischengespeicherte Versionen der kachelten Pinselobjekte verwenden.

Die CacheInvalidationThresholdMinimum Eigenschaftswerte und CacheInvalidationThresholdMaximum sind Werte für relative Größe, die bestimmen, wann das TileBrush Objekt aufgrund von Skalierungsänderungen neu generiert werden soll. Wenn die CacheInvalidationThresholdMaximum -Eigenschaft beispielsweise auf 2.0 festgelegt ist, muss der Cache für den TileBrush nur neu generiert werden, wenn seine Größe die doppelte Größe des aktuellen Caches überschreitet.

Verwenden Sie diese Methode, um die CachingHint angefügte Eigenschaft im Code festzulegen.

Gilt für:

Weitere Informationen