ImageBrush Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Заполнение области с помощью изображения. Источник изображения обычно получается из файловых форматов, таких как Совместная группа экспертов по фотографии (JPEG).
public ref class ImageBrush sealed : TileBrush
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ImageBrush final : TileBrush
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ImageBrush : TileBrush
Public NotInheritable Class ImageBrush
Inherits TileBrush
<ImageBrush .../>
- Наследование
- Атрибуты
Примеры
В этом примере xaml показано, как задать для свойства Foregroundобъекта TextBlock значение ImageBrush, изображение которого используется в качестве заливки для текста, отображаемого TextBlock.
<!-- TextBlock with an image brush applied to the text. -->
<TextBlock FontFamily="Verdana" FontSize="72"
FontStyle="Italic" FontWeight="Bold">
SHRUBBERY
<TextBlock.Foreground>
<ImageBrush ImageSource="forest.jpeg"/>
</TextBlock.Foreground>
</TextBlock>
Комментарии
ImageBrush — это тип кисти , которая определяет ее содержимое как изображение, которое при необходимости можно растянуть и выровнять. К использованию ImageBrush относятся декоративные эффекты для текста или фон изображения для элементов управления или контейнеров макета.
Полезно использовать ImageBrush вместо элемента управления Image в двух сценариях main:
- Вы хотите закрасить непрямоугольную область, например эллипс или границу изображением
- Вы хотите использовать один ImageBrush для закраски нескольких областей или элементов UIElement одним и тем же изображением, что более эффективно, чем использование нескольких элементов управления Image
Если вы определяете ImageBrush с помощью кода, используйте конструктор по умолчанию, а затем задайте ImageBrush.ImageSource. Для этого требуется BitmapImage (а не универсальный код ресурса (URI)) в коде. Если источником является поток, для инициализации значения используйте метод SetSourceAsync. Если источником является универсальный код ресурса (URI), который включает в себя содержимое приложения, использующего схемы ms-appx или ms-resource , используйте конструктор BitmapImage , который принимает универсальный код ресурса (URI). Также можно рассмотреть вариант обработки события ImageOpened, если существуют некоторые временные проблемы с получением или декодированием источника изображения, при которых может понадобиться отображать альтернативное содержимое до тех пор, пока источник изображения не станет доступным. Пример кода см . в разделе Пример изображений XAML .
Примечание
Вы можете использовать автоматическую обработку для доступа к неквалифицированным ресурсам с помощью текущих квалификаторов масштабирования и языка и региональных параметров или ResourceManager и ResourceMap с квалификаторами для языка и региональных параметров и масштаба, чтобы получить ресурсы напрямую. Подробнее см. в разделе Система управления ресурсами.
Свойство Stretch важно для применения изображения при использовании в качестве кисти. Некоторые изображения хорошо выглядят, если они растягиваются, как применяется к определенному свойству Brush с поведением Заливка , в то время как другие изображения не растягиваются и не масштабируются и могут требовать значения None или Uniform для Stretch. Поэкспериментируйте с различными значениями для Stretch , чтобы узнать, какое поведение лучше всего выглядит при применении к пользовательскому интерфейсу.
Исходные изображения и масштабирование
Следует создавать источники изображений в нескольких рекомендуемых размерах, чтобы приложение выглядело отлично при его масштабировании Windows 8. При указании ImageSource для ImageBrush можно использовать соглашение об именовании, которое автоматически будет ссылаться на правильный ресурс для текущего масштабирования. Особенности контекста именования и дополнительные сведения описываются в разделе Краткое руководство: использование файловых и графических ресурсов.
Дополнительные сведения о проектировании для масштабирования см. в разделе Рекомендации по пользовательскому интерфейсу для макета и масштабирования.
Конструкторы
ImageBrush() |
Инициализирует новый экземпляр класса ImageBrush . |
Свойства
AlignmentX |
Возвращает или задает горизонтальное выравнивание содержимого в базовой плитке TileBrush . (Унаследовано от TileBrush) |
AlignmentY |
Возвращает или задает вертикальное выравнивание содержимого в базовой плитке TileBrush . (Унаследовано от TileBrush) |
Dispatcher |
Всегда возвращает в |
DispatcherQueue |
Возвращает объект , |
ImageSource |
Возвращает или задает источник изображения, отображаемый этим ImageBrush. В коде, который вы задали с помощью экземпляра подкласса ImageSource , в XAML вы задали его с помощью универсального кода ресурса (URI) для исходного файла изображения. |
ImageSourceProperty |
Определяет свойство зависимости ImageSource . |
Opacity |
Возвращает или задает степень непрозрачности кисти. (Унаследовано от Brush) |
RelativeTransform |
Возвращает или задает преобразование, которое применяется к кисти с использованием относительных координат. (Унаследовано от Brush) |
Stretch |
Возвращает или задает значение, указывающее, как содержимое tileBrush растягивается в соответствии с его плитками. (Унаследовано от TileBrush) |
Transform |
Получает или задает преобразование, которое применяется к кисти. (Унаследовано от Brush) |
Методы
ClearValue(DependencyProperty) |
Очищает локальное значение свойства зависимостей. (Унаследовано от DependencyObject) |
GetAnimationBaseValue(DependencyProperty) |
Возвращает любое базовое значение, установленное для свойства зависимостей, которое применяется в случаях, когда анимация не активна. (Унаследовано от DependencyObject) |
GetValue(DependencyProperty) |
Возвращает текущее действующее значение свойства зависимостей из DependencyObject. (Унаследовано от DependencyObject) |
PopulatePropertyInfo(String, AnimationPropertyInfo) |
Определяет свойство, которое можно анимировать. (Унаследовано от Brush) |
PopulatePropertyInfoOverride(String, AnimationPropertyInfo) |
При переопределении в производном классе определяет свойство, которое можно анимировать. (Унаследовано от Brush) |
ReadLocalValue(DependencyProperty) |
Возвращает локальное значение свойства зависимостей, если задано локальное значение. (Унаследовано от DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Регистрирует функцию уведомления для прослушивания изменений определенного DependencyProperty в этом экземпляре DependencyObject . (Унаследовано от DependencyObject) |
SetValue(DependencyProperty, Object) |
Задает локальное значение свойства зависимостей для Объекта DependencyObject. (Унаследовано от DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Отменяет уведомление об изменениях, которое было ранее зарегистрировано путем вызова Метода RegisterPropertyChangedCallback. (Унаследовано от DependencyObject) |
События
ImageFailed |
Возникает при возникновении ошибки, связанной с извлечением изображения или форматированием. |
ImageOpened |
Происходит при загрузке и декодировании источника изображения без сбоев. Это событие можно использовать для определения размера изображения перед его отрисовкой. |