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 Значения свойств CacheInvalidationThresholdMaximum — это значения относительного размера, определяющие, когда TileBrush объект должен быть повторно создан из-за изменений в масштабе. Например, если CacheInvalidationThresholdMaximum для свойства задано значение 2.0, кэш необходимо TileBrush повторно создать только в том случае, если его размер превышает два раза больше текущего кэша.
Чтобы получить доступ к этому свойству в коде GetCachingHint , используйте методы и SetCachingHint методы.
Сведения о свойстве зависимостей
| Элемент | Ценность |
|---|---|
| Поле идентификатора | CachingHintProperty |
Свойства метаданных, равные свойству true |
Нет |