BitmapCacheBrush Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Рисует область с кэшируемым содержимым.
public ref class BitmapCacheBrush sealed : System::Windows::Media::Brush
public sealed class BitmapCacheBrush : System.Windows.Media.Brush
type BitmapCacheBrush = class
inherit Brush
Public NotInheritable Class BitmapCacheBrush
Inherits Brush
- Наследование
Примеры
В следующем примере кода показано, как связать его BitmapCache с BitmapCacheBrush. Ресурс можно использовать на нескольких элементах и добиться хорошей BitmapCacheBrush производительности. Полный список кода см. в разделе "Практическое руководство. Использование кэшированного элемента в качестве кисти".
<Window.Resources>
<RichTextBox x:Key="cachedRichTextBox" >
<RichTextBox.CacheMode>
<BitmapCache EnableClearType="True" RenderAtScale="1" SnapsToDevicePixels="True" />
</RichTextBox.CacheMode>
</RichTextBox>
<BitmapCacheBrush x:Key="cachedRichTextBoxBrush" Target="{StaticResource cachedRichTextBox}">
<BitmapCacheBrush.BitmapCache>
<BitmapCache EnableClearType="False" RenderAtScale="0.4" SnapsToDevicePixels="False" />
</BitmapCacheBrush.BitmapCache>
</BitmapCacheBrush>
</Window.Resources>
Комментарии
BitmapCacheBrush Используйте класс для эффективного использования кэшированного элемента. Это полезно, если необходимо нарисовать сложное содержимое на несколько элементов. BitmapCache Используйте класс для кэширования сложного элемента.
Visual Target Назначьте свойство свойству и при необходимости назначьте BitmapCacheBitmapCache свойство. Кисть CacheMode и целевой объект Visual взаимодействуют с различными поведениями. В следующей таблице описано это взаимодействие.
| Кисть имеет CacheMode | Целевой объект не имеет cacheMode | Целевой объект имеет CacheMode |
|---|---|---|
| Нет | Целевой визуальный элемент обычно отрисовывается; кисть использует поведение кэша по умолчанию. | Целевой визуальный элемент отображается в собственном кэше; кисть использует кэш целевого объекта при отрисовке. |
| Да | Целевой визуальный элемент обычно отрисовывается; Кисть отрисовывает целевой объект в собственный кэш и использует его для отрисовки. | Целевой визуальный элемент отображается в собственном кэше; Кисть отрисовывает целевой объект в собственный кэш кисти и использует его для отрисовки. |
Класс BitmapCacheBrush аналогичен VisualBrush классу, но BitmapCacheBrush всегда отрисовывается из кэша целевого элемента или из кэша, определенного свойством BitmapCache . Класс BitmapCacheBrush также поддерживает грязные регионы.
В следующей таблице показаны параметры кэша BitmapCacheBrush растровых карт по умолчанию для класса.
| Свойство кэша растровых карт | Настройка по умолчанию |
|---|---|
| SnapsToDevicePixels | false |
| EnableClearType | false |
| RenderAtScale | 1 |
Свойство SnapsToDevicePixels игнорируется классом BitmapCacheBrush .
Класс BitmapCacheBrush игнорирует следующие свойства в корневом каталоге Visual. Это поведение отличается от VisualBrush класса.
Конструкторы
| Имя | Описание |
|---|---|
| BitmapCacheBrush() |
Инициализирует новый экземпляр класса BitmapCacheBrush. |
| BitmapCacheBrush(Visual) |
Инициализирует новый экземпляр BitmapCacheBrush класса с указанным Visual. |
Поля
| Имя | Описание |
|---|---|
| AutoLayoutContentProperty |
Определяет AutoLayoutContent свойство зависимостей. |
| BitmapCacheProperty |
Определяет BitmapCache свойство зависимостей. |
| TargetProperty |
Определяет Target свойство зависимостей. |
Свойства
| Имя | Описание |
|---|---|
| AutoLayoutContent |
Возвращает или задает значение, указывающее, применяется ли макет к содержимому этой кисти. |
| BitmapCache |
Возвращает или задает содержимое CacheMode , представляющее кэшированное содержимое. |
| CanFreeze |
Возвращает значение, указывающее, можно ли изменить объект. (Унаследовано от Freezable) |
| DependencyObjectType |
Возвращает объект DependencyObjectType , который упаковывает тип СРЕДЫ CLR этого экземпляра. (Унаследовано от DependencyObject) |
| Dispatcher |
Dispatcher Возвращает это DispatcherObject значение, с которым связано. (Унаследовано от DispatcherObject) |
| HasAnimatedProperties |
Возвращает значение, указывающее, связан ли один или несколько AnimationClock объектов с любым из свойств зависимостей этого объекта. (Унаследовано от Animatable) |
| IsFrozen |
Возвращает значение, указывающее, является ли объект изменяемым в настоящее время. (Унаследовано от Freezable) |
| IsSealed |
Возвращает значение, указывающее, запечатан ли этот экземпляр (только для чтения). (Унаследовано от DependencyObject) |
| Opacity |
Возвращает или задает степень непрозрачности объекта Brush. (Унаследовано от Brush) |
| RelativeTransform |
Возвращает или задает преобразование, которое применяется к кисти с помощью относительных координат. (Унаследовано от Brush) |
| Target |
Возвращает или задает целевой визуальный элемент для кэширования. |
| Transform |
Возвращает или задает преобразование, которое применяется к кисти. Это преобразование применяется после того, как выходные данные кисти сопоставлены и расположены. (Унаследовано от Brush) |
Методы
| Имя | Описание |
|---|---|
| ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) |
Применяется к указанному объекту AnimationClockDependencyProperty. Если свойство уже анимировано, используется указанный HandoffBehavior параметр. (Унаследовано от Animatable) |
| ApplyAnimationClock(DependencyProperty, AnimationClock) |
Применяется к указанному объекту AnimationClockDependencyProperty. Если свойство уже анимировано, SnapshotAndReplace используется поведение передачи. (Унаследовано от Animatable) |
| BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) |
Применяет анимацию к указанному DependencyProperty. Анимация запускается при отрисовки следующего кадра. Если указанное свойство уже анимировано, используется указанный HandoffBehavior параметр. (Унаследовано от Animatable) |
| BeginAnimation(DependencyProperty, AnimationTimeline) |
Применяет анимацию к указанному DependencyProperty. Анимация запускается при отрисовки следующего кадра. Если указанное свойство уже анимировано, SnapshotAndReplace используется поведение передачи. (Унаследовано от Animatable) |
| CheckAccess() |
Определяет, имеет ли вызывающий поток доступ к этому DispatcherObject. (Унаследовано от DispatcherObject) |
| ClearValue(DependencyProperty) |
Очищает локальное значение свойства. Свойство для очистки указывается идентификатором DependencyProperty . (Унаследовано от DependencyObject) |
| ClearValue(DependencyPropertyKey) |
Очищает локальное значение свойства только для чтения. Свойство, которое необходимо очистить, задается параметром DependencyPropertyKey. (Унаследовано от DependencyObject) |
| Clone() |
Создает модификаторный клон BitmapCacheBrushобъекта, делая глубокие копии значений объекта. При копировании свойств зависимостей объекта этот метод копирует выражения (которые больше не могут разрешаться), но не анимации или их текущие значения. |
| CloneCore(Freezable) |
Делает экземпляр клоном (глубокой копией) указанных Freezable значений свойств с использованием базовых (не анимированных) значений свойств. (Унаследовано от Freezable) |
| CloneCurrentValue() |
Создает модификируемую клон (глубокую копию) текущего BitmapCacheBrush значения. |
| CloneCurrentValueCore(Freezable) |
Делает экземпляр модификируемым клоном (глубокой копией) указанного Freezable с использованием текущих значений свойств. (Унаследовано от Freezable) |
| CoerceValue(DependencyProperty) |
Принуждает значение указанного свойства зависимостей. Это достигается путем вызова любой CoerceValueCallback функции, указанной в метаданных свойств для свойства зависимостей, так как он существует при вызове DependencyObject. (Унаследовано от DependencyObject) |
| CreateInstance() |
Инициализирует новый экземпляр класса Freezable. (Унаследовано от Freezable) |
| CreateInstanceCore() |
При реализации в производном классе создает новый экземпляр производного Freezable класса. (Унаследовано от Freezable) |
| Equals(Object) |
Определяет, эквивалентен ли предоставленный DependencyObject объект текущему DependencyObject. (Унаследовано от DependencyObject) |
| Freeze() |
Делает текущий объект неизменяемым и задает для свойства значение IsFrozen |
| FreezeCore(Boolean) |
Делает этот Animatable объект неизменяемым или определяет, может ли он быть изменен. (Унаследовано от Animatable) |
| GetAnimationBaseValue(DependencyProperty) |
Возвращает неанимированное значение указанного DependencyProperty. (Унаследовано от Animatable) |
| GetAsFrozen() |
Создает замороженную копию базовых Freezable(не анимированных) значений свойств. Так как копия заморожена, все замороженные вложенные объекты копируются по ссылке. (Унаследовано от Freezable) |
| GetAsFrozenCore(Freezable) |
Делает экземпляр замороженным клоном указанных Freezable значений свойств (не анимированных). (Унаследовано от Freezable) |
| GetCurrentValueAsFrozen() |
Создает замороженную копию с использованием текущих значений Freezable свойств. Так как копия заморожена, все замороженные вложенные объекты копируются по ссылке. (Унаследовано от Freezable) |
| GetCurrentValueAsFrozenCore(Freezable) |
Делает текущий экземпляр замороженным клоном указанного Freezable. Если объект имеет анимированные свойства зависимостей, их текущие анимированные значения копируются. (Унаследовано от Freezable) |
| GetHashCode() |
Получает хэш-код для этого DependencyObject. (Унаследовано от DependencyObject) |
| GetLocalValueEnumerator() |
Создает специализированный перечислитель для определения того, какие свойства зависимостей имеют локальные значения для этого DependencyObject. (Унаследовано от DependencyObject) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| GetValue(DependencyProperty) |
Возвращает текущее эффективное значение свойства зависимостей для этого экземпляра DependencyObject. (Унаследовано от DependencyObject) |
| InvalidateProperty(DependencyProperty) |
Повторно вычисляет эффективное значение для указанного свойства зависимостей. (Унаследовано от DependencyObject) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| OnChanged() |
Вызывается при изменении текущего Freezable объекта. (Унаследовано от Freezable) |
| OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) |
Этот член поддерживает инфраструктуру Windows Presentation Foundation (WPF) и не предназначен для использования непосредственно из кода. (Унаследовано от Freezable) |
| OnFreezablePropertyChanged(DependencyObject, DependencyObject) |
Убедитесь, что для элемента данных, который только что был установлен, установлены DependencyObjectType соответствующие указатели контекста. (Унаследовано от Freezable) |
| OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Переопределяет DependencyObject реализацию OnPropertyChanged(DependencyPropertyChangedEventArgs) для вызова всех Changed обработчиков в ответ на изменение свойства зависимостей типа Freezable. (Унаследовано от Freezable) |
| ReadLocalValue(DependencyProperty) |
Возвращает локальное значение свойства зависимостей, если оно существует. (Унаследовано от DependencyObject) |
| ReadPreamble() |
Гарантирует, что Freezable доступ к ней осуществляется из допустимого потока. Наследующие метод Freezable должны вызывать этот метод в начале любого API, который считывает элементы данных, которые не являются свойствами зависимостей. (Унаследовано от Freezable) |
| SetCurrentValue(DependencyProperty, Object) |
Задает значение свойства зависимостей, не изменяя его источник значений. (Унаследовано от DependencyObject) |
| SetValue(DependencyProperty, Object) |
Задает локальное значение свойства зависимостей, указанное его идентификатором свойства зависимостей. (Унаследовано от DependencyObject) |
| SetValue(DependencyPropertyKey, Object) |
Задает локальное значение свойства зависимостей только для чтения, указанное DependencyPropertyKey идентификатором свойства зависимости. (Унаследовано от DependencyObject) |
| ShouldSerializeProperty(DependencyProperty) |
Возвращает значение, указывающее, должны ли процессы сериализации сериализовать значение для указанного свойства зависимостей. (Унаследовано от DependencyObject) |
| ToString() |
Возвращает строковое представление этого Brushобъекта. (Унаследовано от Brush) |
| ToString(IFormatProvider) |
Создает строковое представление этого объекта на основе указанных сведений о форматировании, зависящих от языка и региональных параметров. (Унаследовано от Brush) |
| VerifyAccess() |
Принудительно применяет, что вызывающий поток имеет доступ к этому DispatcherObject. (Унаследовано от DispatcherObject) |
| WritePostscript() |
Changed Вызывает событие для Freezable метода и вызывает его OnChanged() метод. Классы, производные от Freezable этого метода, должны вызываться в конце любого API, который изменяет элементы класса, которые не хранятся в качестве свойств зависимостей. (Унаследовано от Freezable) |
| WritePreamble() |
Проверяет, что Freezable он не заморожен и к нему осуществляется доступ из допустимого контекста потоков. Freezable наследующие метод должны вызывать этот метод в начале любого API, записывающего элементы данных, которые не являются свойствами зависимостей. (Унаследовано от Freezable) |
События
| Имя | Описание |
|---|---|
| Changed |
Происходит при Freezable изменении объекта или объекта, содержащего его. (Унаследовано от Freezable) |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| IFormattable.ToString(String, IFormatProvider) |
Форматирует значение текущего экземпляра с помощью указанного формата. (Унаследовано от Brush) |