CachingHint Enum

Definitie

Hiermee geeft u op of u tegelborstelobjecten in de cache wilt opslaan.

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

Velden

Name Waarde Description
Unspecified 0

Er zijn geen hints voor caching opgegeven.

Cache 1

Cache de tegelborstelobjecten in een buffer buiten het scherm, met behulp van de cachehints die zijn opgegeven door de RenderOptions instellingen.

Voorbeelden

In het volgende voorbeeld ziet u hoe u de optie voor het opslaan van cachehints voor een DrawingBrushgebruikt.

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)

Opmerkingen

Standaard slaat WPF de weergegeven inhoud van DrawingBrush en VisualBrush-objecten niet in de cache op. In statische scenario's waarbij zowel de inhoud als het gebruik van de borstel in de scène veranderen, biedt caching geen voordeel omdat het videogeheugen bespaart. Wanneer een borstel met statische inhoud op een niet-statische manier wordt gebruikt, is het standaardgedrag van WPF het opnieuw weergeven van de volledige inhoud van het borstelkader, zelfs als de inhoud niet verandert. Dit gebeurt bijvoorbeeld wanneer een statisch DrawingBrush object wordt toegewezen aan VisualBrush het oppervlak van een draaiend 3D-object. Het opnieuw weergeven van de statische inhoud kan een negatieve invloed hebben op de prestaties.

Door de CachingHint gekoppelde eigenschap op de kwast in te stellen op Cache, kunt u de prestaties verbeteren met behulp van versies in de cache van de tegelborstelobjecten.

De eigenschapswaarden CacheInvalidationThresholdMinimum en CacheInvalidationThresholdMaximum zijn relatieve groottewaarden die bepalen wanneer het TileBrush object opnieuw moet worden gegenereerd vanwege wijzigingen in de schaal. Als u bijvoorbeeld de eigenschap CacheInvalidationThresholdMaximum instelt op 2.0, hoeft de cache voor de TileBrush alleen opnieuw te worden gegenereerd wanneer de grootte groter is dan twee keer de grootte van de huidige cache.

Van toepassing op

Zie ook