CachingHint Перечисление

Определение

Указывает, следует ли кэшировать объекты мозаичной кисти.

public enum class CachingHint
public enum CachingHint
type CachingHint = 
Public Enum CachingHint
Наследование
CachingHint

Поля

Cache 1

Кэшировать объекты мозаичной кисти во буфере вне экрана, используя кэшируемые подсказки, заданные параметрами RenderOptions.

Unspecified 0

Кэшируемые подсказки не заданы.

Примеры

В следующем примере показано, как использовать параметр указания кэширования для элемента DrawingBrush.

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)

Комментарии

По умолчанию WPF не кэширует отрисованное содержимое DrawingBrush и VisualBrush объекты. В статических сценариях, где ни содержимое, ни использование кисти в сцене не изменяется, а не кэширование дает преимущество, так как оно экономит память видео. Если кисть со статическим содержимым используется нестатический способ, поведение WPF по умолчанию заключается в повторной отрисовке всего содержимого кисти каждого кадра, даже если содержимое не изменялось. Например, это произойдет, когда статический DrawingBrush или VisualBrush сопоставлен с поверхностью вращающегося трехмерного объекта. Повторная отрисовка статического содержимого может негативно повлиять на производительность.

Задав присоединенное CachingHint свойство на кисти в кэш, можно повысить производительность с помощью кэшированных версий объектов плиток кисти.

Значения CacheInvalidationThresholdMinimum свойств — CacheInvalidationThresholdMaximum это относительные значения размера, определяющие, когда TileBrush объект должен быть повторно создан из-за изменений в масштабе. Например, установив CacheInvalidationThresholdMaximum для свойства значение 2.0, кэш TileBrush только необходимо создать повторно, если его размер превышает в два раза больше текущего кэша.

Применяется к

См. также раздел