Поделиться через


ImageBrush.ImageSource Свойство

Определение

Возвращает или задает источник изображения, отображаемый этим imageBrush. В коде, который вы задали с помощью экземпляра подкласса ImageSource , в XAML вы задали его с помощью URI для исходного файла изображения.

public:
 property ImageSource ^ ImageSource { ImageSource ^ get(); void set(ImageSource ^ value); };
ImageSource ImageSource();

void ImageSource(ImageSource value);
public ImageSource ImageSource { get; set; }
var imageSource = imageBrush.imageSource;
imageBrush.imageSource = imageSource;
Public Property ImageSource As ImageSource
<ImageBrush ImageSource="imageUri"/>

Значение свойства

Объект, представляющий источник изображения, который будет отображаться этим объектом ImageBrush при его применении к содержимому.

Комментарии

Настройка источника изображения из исходного файла или потока изображения по сути является асинхронным действием. Если для источника задано значение универсального кода ресурса (URI), которое не может быть разрешено в допустимый исходный файл изображения, ошибка не возникает. Вместо этого он вызывает событие ImageFailed в ImageBrush. Если вы хотите убедиться, что исходный файл изображения был загружен правильно, можно обработать ImageOpened для проверки, а также ImageFailed как способ предоставления резервного источника изображения или повторной компиляции пользовательского интерфейса.

Настройка ImageSource в XAML

Это свойство можно задать в XAML, но в этом случае вы задаете значение атрибута ImageSource в виде строки, представляющей универсальный код ресурса (URI). Это поведение основано на преобразовании базового типа, которое обрабатывает строку как универсальный код ресурса (URI) и вызывает внутренний эквивалент конструктора BitmapImage(Uri).

Событие ImageFailed может возникнуть, если исходное значение атрибута ImageSource в XAML не указывает допустимый источник. Относительный путь можно использовать для ссылки на изображение, упаковав его вместе с приложением, или абсолютный универсальный код ресурса (URI) для ссылки на образ с сервера. Если вы используете источник образа, который упаковываются как часть приложения, обычно используются схемы ms-appx или ms-resource .

Настройка ImageSource в коде

Если вы определяете ImageBrush с помощью кода, ImageBrush.ImageSource требует bitmapImage (а не универсальный код ресурса (URI)) в коде. Если источником является поток, для инициализации значения используйте метод SetSourceAsync. Если источником является универсальный код ресурса (URI), ссылающийся на файл, который содержит содержимое в приложении, использующее схемы ms-appx или ms-resource , используйте конструктор BitmapImage , который принимает универсальный код ресурса (URI). Также можно рассмотреть вариант обработки события ImageOpened, если существуют некоторые временные проблемы с получением или декодированием источника изображения, при которых может понадобиться отображать альтернативное содержимое до тех пор, пока источник изображения не станет доступным. Пример кода см. в разделе Пример изображений XAML .

Если вам нужно создать универсальный код ресурса (URI) относительно другого объекта в пользовательском интерфейсе, чтобы помочь область запросу на ресурс, иногда можно использовать свойство FrameworkElement.BaseUri, вызываемое для другого объекта в пользовательском интерфейсе. Это предоставляет базовый универсальный код ресурса (URI), из которого создается xaml-страница в структуре проекта приложения.

Примечание

Вы можете использовать автоматическую обработку для доступа к неквалифицированным ресурсам с помощью текущих квалификаторов масштабирования и языка и региональных параметров, а также использовать ResourceManager и ResourceMap с квалификаторами для языка и региональных параметров и масштаба, чтобы получить ресурсы напрямую. Подробнее см. в разделе Система управления ресурсами.

Исходные изображения и масштабирование

Следует создать источники изображений в нескольких рекомендуемых размерах, чтобы приложение выглядело отлично при масштабировании Windows 8. При указании ImageSource для ImageBrush можно использовать соглашение об именовании, которое автоматически будет ссылаться на правильный ресурс для текущего масштабирования. Особенности контекста именования и дополнительные сведения описываются в разделе Краткое руководство: использование файловых и графических ресурсов.

Дополнительные сведения о проектировании для масштабирования см. в статье Рекомендации по пользовательскому интерфейсу для макета и масштабирования.

Дополнительные сведения о ресурсах приложения и о том, как упаковать источники изображений в приложение, см. в разделе Определение ресурсов приложения.

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

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