CachingHint Enum
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
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
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.