Udostępnij za pośrednictwem


RenderOptions.CachingHint Właściwość dołączona

Definicja

Pobiera lub ustawia wartość wskazującą, że renderowana zawartość powinna być buforowana, gdy jest to możliwe.

see GetCachingHint, and SetCachingHint
see GetCachingHint, and SetCachingHint
see GetCachingHint, and SetCachingHint

Przykłady

W poniższym przykładzie pokazano, jak użyć opcji wskazówek buforowania dla elementu DrawingBrush.

<DrawingBrush x:Key="drawingBrush"
              RenderOptions.CachingHint="Cache"
              RenderOptions.CacheInvalidationThresholdMaximum="2.0"
              RenderOptions.CacheInvalidationThresholdMinimum="0.5">
    <DrawingBrush.Drawing>
        <GeometryDrawing Brush="Blue">
            <GeometryDrawing.Geometry>
                <GeometryGroup>
                    <EllipseGeometry RadiusX="20" RadiusY="20" Center="10,10" />
                </GeometryGroup>
            </GeometryDrawing.Geometry>
            <GeometryDrawing.Pen>
                <Pen Thickness="10" Brush="Black" />
            </GeometryDrawing.Pen>
        </GeometryDrawing>
    </DrawingBrush.Drawing>
</DrawingBrush>

Uwagi

Ta dołączona właściwość jest obsługiwana przez TileBrush i jej typy pochodne. Ma być używany z pędzlami, które mają powierzchnie pośrednie, takie jak DrawingBrush i VisualBrush.

Domyślnie WPF nie buforuje renderowanej zawartości DrawingBrush obiektów i VisualBrush . W scenariuszach statycznych, w których ani zawartość, ani użycie pędzla w scenie nie ulega zmianie, nie buforowanie zapewnia korzyść, ponieważ oszczędza pamięć wideo. Gdy szczotka z zawartością statyczną jest używana w sposób niestatyczny, domyślnym zachowaniem WPF jest ponowne renderowanie całej zawartości pędzla dla każdej ramki, mimo że zawartość jest niezmienna. Na przykład dzieje się tak, gdy statyczny DrawingBrush lub VisualBrush jest mapowany na powierzchnię obracającego się obiektu 3D. Ponowne renderowanie zawartości statycznej może mieć negatywny wpływ na wydajność.

Ustawiając dołączoną CachingHint właściwość pędzla na Cache, można zwiększyć wydajność przy użyciu buforowanych wersji obiektów pędzla kafelków.

Wartości CacheInvalidationThresholdMinimum właściwości i CacheInvalidationThresholdMaximum są wartościami o względnym rozmiarze, które określają, kiedy TileBrush obiekt ma być ponownie wygenerowany z powodu zmian skali. Na przykład gdy CacheInvalidationThresholdMaximum właściwość jest ustawiona na 2,0, pamięć podręczna dla TileBrush obiektu musi zostać ponownie wygenerowana tylko wtedy, gdy jego rozmiar przekracza dwa razy rozmiar bieżącej pamięci podręcznej.

Aby uzyskać dostęp do tej właściwości w kodzie, użyj GetCachingHint metod i SetCachingHint .

Informacje dotyczące właściwości zależności

Pole identyfikatora CachingHintProperty
Właściwości metadanych ustawione na true Brak

Dotyczy

Zobacz też