RenderOptions.CachingHint Присоединенное свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает или задает значение, указывающее, что визуализируемое содержимое по возможности должно кэшироваться.
see GetCachingHint, and SetCachingHint
see GetCachingHint, and SetCachingHint
see GetCachingHint, and SetCachingHint
Примеры
В следующем примере показано, как использовать параметр указания кэширования для элемента 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>
Комментарии
Это присоединенное свойство поддерживается производными типами TileBrush . Он предназначен для использования с кисти, которые имеют промежуточные поверхности, такие как DrawingBrush и VisualBrush.
По умолчанию WPF не кэширует отображаемое содержимое DrawingBrush и VisualBrush объекты. В статических сценариях, где ни содержимое, ни использование кисти в сцене не изменяется, кэширование не дает преимуществ, так как она экономит память видео. Если кисть со статическим содержимым используется нестатический способ, поведение WPF по умолчанию заключается в повторном отображении всего содержимого кисти каждого кадра, даже если содержимое не изменялось. Например, это произойдет, если статический DrawingBrush объект или VisualBrush сопоставлен с поверхностью вращающегося трехмерного объекта. Повторная отрисовка статического содержимого может негативно повлиять на производительность.
Задав присоединенное CachingHint свойство кисти Cache, можно повысить производительность с помощью кэшированных версий объектов плиток кисти.
Значения CacheInvalidationThresholdMinimum свойств — это значения относительного размера, определяющие, когда TileBrush объект должен быть создан из-за изменений в CacheInvalidationThresholdMaximum масштабе. Например, если CacheInvalidationThresholdMaximum для свойства задано значение 2.0, кэш необходимо TileBrush повторно создать только в том случае, если его размер превышает два раза больше текущего кэша.
Чтобы получить доступ к этому свойству в коде GetCachingHint , используйте методы и SetCachingHint методы.
Сведения о свойстве зависимостей
Поле идентификатора | CachingHintProperty |
Для свойств метаданных задано значение true |
Нет |