Udostępnij za pośrednictwem


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

Definicja

Pobiera lub ustawia wartość maksymalną progu unieważniania pamięci podręcznej dla danej DependencyObjectwartości .

see GetCacheInvalidationThresholdMaximum, and SetCacheInvalidationThresholdMaximum
see GetCacheInvalidationThresholdMaximum, and SetCacheInvalidationThresholdMaximum
see GetCacheInvalidationThresholdMaximum, and SetCacheInvalidationThresholdMaximum

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. Ma on wpływ tylko wtedy, gdy właściwość jest ustawiona CachingHint na Cachewartość .

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 zawartości 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 Cachewartość , 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 GetCacheInvalidationThresholdMaximum metod i SetCacheInvalidationThresholdMaximum .

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

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

Dotyczy

Zobacz też