CachingHint Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt an, ob gekachelte Pinselobjekte zwischengespeichert werden sollen.
public enum class CachingHint
public enum CachingHint
type CachingHint =
Public Enum CachingHint
- Vererbung
Felder
| Name | Wert | Beschreibung |
|---|---|---|
| Unspecified | 0 | Es werden keine Zwischenspeicherungshinweise angegeben. |
| Cache | 1 | Zwischenspeichern Sie die nebeneinander angeordneten Pinselobjekte in einem Offscreenpuffer, indem Sie die zwischenspeicherungshinweise verwenden, die durch die RenderOptions Einstellungen angegeben sind. |
Beispiele
Im folgenden Beispiel wird die Verwendung der Option für Zwischenspeicherhinweise für ein DrawingBrush-Element 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 den gerenderten Inhalt und DrawingBrushVisualBrush die gerenderten Objekte nicht zwischen. In statischen Szenarien, in denen weder der Inhalt noch die Verwendung des Pinsels in der Szene geändert wird, bietet die Zwischenspeicherung keinen Vorteil, da sie Den Videospeicher spart. Wenn ein Pinsel mit statischem Inhalt auf nicht statische Weise verwendet wird, besteht das Standardverhalten von WPF darin, den gesamten Inhalt des Pinsels erneut zu rendern, obwohl der Inhalt nicht geändert wird. Dies geschieht beispielsweise, wenn eine statische DrawingBrush oder VisualBrush der Oberfläche eines sich drehenden 3D-Objekts zugeordnet ist. Das erneute Rendern des statischen Inhalts kann sich negativ auf die Leistung auswirken.
Durch Festlegen der CachingHint angefügten Eigenschaft auf dem Pinsel auf "Cache" können Sie die Leistung erhöhen, indem Sie zwischengespeicherte Versionen der nebeneinander angeordneten Pinselobjekte verwenden.
Die CacheInvalidationThresholdMinimum- und CacheInvalidationThresholdMaximum Eigenschaftswerte sind relative Größenwerte, die bestimmen, wann das TileBrush-Objekt aufgrund von Skalierungsänderungen neu generiert werden soll. Wenn Sie beispielsweise die eigenschaft CacheInvalidationThresholdMaximum auf 2.0 festlegen, muss der Cache für die TileBrush nur erneut generiert werden, wenn die Größe doppelt so groß wie der aktuelle Cache ist.