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


BitmapImage Класс

Определение

Предоставляет специальный объект BitmapSource, оптимизированный для загрузки изображений с помощью языка XAML.

public ref class BitmapImage sealed : System::Windows::Media::Imaging::BitmapSource, System::ComponentModel::ISupportInitialize, System::Windows::Markup::IUriContext
public sealed class BitmapImage : System.Windows.Media.Imaging.BitmapSource, System.ComponentModel.ISupportInitialize, System.Windows.Markup.IUriContext
type BitmapImage = class
    inherit BitmapSource
    interface ISupportInitialize
    interface IUriContext
Public NotInheritable Class BitmapImage
Inherits BitmapSource
Implements ISupportInitialize, IUriContext
Наследование
Реализации

Примеры

В следующих примерах кода показано, как использовать BitmapImage в XAML и коде.

<!-- Property Tag XAML Syntax -->
<Image Width="200"  Margin="5" Grid.Column="1" Grid.Row="1" >
   <Image.Source>
      <BitmapImage UriSource="sampleImages/bananas.jpg" />
   </Image.Source>
</Image>
<!-- Property Tag XAML Syntax -->
<Image Width="200"  Margin="5" Grid.Column="1" Grid.Row="1" >
   <Image.Source>
      <BitmapImage UriSource="sampleImages/bananas.jpg" />
   </Image.Source>
</Image>
// Create the image element.
Image simpleImage = new Image();    
simpleImage.Width = 200;
simpleImage.Margin = new Thickness(5);

// Create source.
BitmapImage bi = new BitmapImage();
// BitmapImage.UriSource must be in a BeginInit/EndInit block.
bi.BeginInit();
bi.UriSource = new Uri(@"/sampleImages/cherries_larger.jpg",UriKind.RelativeOrAbsolute);
bi.EndInit();
// Set the image source.
simpleImage.Source = bi;
' Create the image element.
Dim simpleImage As New Image()
simpleImage.Width = 200
simpleImage.Margin = New Thickness(5)

' Create source.
Dim bi As New BitmapImage()
' BitmapImage.UriSource must be in a BeginInit/EndInit block.
bi.BeginInit()
bi.UriSource = New Uri("/sampleImages/cherries_larger.jpg", UriKind.RelativeOrAbsolute)
bi.EndInit()
' Set the image source.
simpleImage.Source = bi

Комментарии

BitmapImage в первую очередь поддерживает синтаксис XAML и предоставляет дополнительные свойства для загрузки растровых изображений, которые не определены в BitmapSource.

Объект BitmapImage реализует интерфейс ISupportInitialize для оптимизации инициализации по нескольким свойствам. Изменения свойств происходят только во время инициализации объекта. Вызовите метод BeginInit для сигнализации о начале инициализации и метод EndInit для сигнализации о ее завершении. После инициализации изменения свойств игнорируются.

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

Конструкторы

BitmapImage()

Инициализирует новый экземпляр класса BitmapImage.

BitmapImage(Uri)

Инициализирует новый экземпляр BitmapImage, используя предоставленный Uri.

BitmapImage(Uri, RequestCachePolicy)

Инициализирует новый экземпляр BitmapImage с изображением, источником коего является Uri, и кэшируемого в соответствии с предоставленным RequestCachePolicy.

Поля

CacheOptionProperty

Идентифицирует свойство зависимостей CacheOption.

CreateOptionsProperty

Идентифицирует свойство зависимостей CreateOptions.

DecodePixelHeightProperty

Идентифицирует свойство зависимостей DecodePixelHeight.

DecodePixelWidthProperty

Идентифицирует свойство зависимостей DecodePixelWidth.

RotationProperty

Идентифицирует свойство зависимостей Rotation.

SourceRectProperty

Идентифицирует свойство зависимостей SourceRect.

StreamSourceProperty

Идентифицирует свойство зависимостей StreamSource.

UriCachePolicyProperty

Идентифицирует свойство зависимостей UriCachePolicy.

UriSourceProperty

Идентифицирует свойство зависимостей UriSource.

Свойства

BaseUri

Получает или задает значение, представляющее базовый Uri текущего контекста BitmapImage.

CacheOption

Получает или задает BitmapCacheOption для использования данным экземпляром BitmapImage.

CanFreeze

Возвращает значение, которое указывает, можно ли сделать объект неизменяемым.

(Унаследовано от Freezable)
CreateOptions

Возвращает или задает BitmapCreateOptions для BitmapImage.

DecodePixelHeight

Возвращает или задает высоту декодированного изображения в пикселях.

DecodePixelWidth

Возвращает или задает ширину декодированного изображения в пикселях.

DependencyObjectType

Возвращает объект DependencyObjectType , который заключает в оболочку тип среды CLR этого экземпляра.

(Унаследовано от DependencyObject)
Dispatcher

Возвращает объект Dispatcher, с которым связан этот объект DispatcherObject.

(Унаследовано от DispatcherObject)
DpiX

Получает горизонтальные точки на дюйм (точек на дюйм) изображения.

(Унаследовано от BitmapSource)
DpiY

Возвращает вертикальные точки на дюйм (точек на дюйм) изображения.

(Унаследовано от BitmapSource)
Format

Возвращает исходный формат PixelFormat данных растрового изображения.

(Унаследовано от BitmapSource)
HasAnimatedProperties

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

(Унаследовано от Animatable)
Height

Возвращает высоту исходного растрового изображения в независимых от устройства единицах (1/96 дюйма на единицу).

(Унаследовано от BitmapSource)
IsDownloading

Получает значение, указывающее, производит ли BitmapImage в данный момент загрузку содержимого.

IsFrozen

Получает значение, указывающее, доступен ли объект для изменения в настоящее время.

(Унаследовано от Freezable)
IsSealed

Получает значение, указывающее, является ли этот экземпляр в данный момент запечатанным (доступным только для чтения).

(Унаследовано от DependencyObject)
Metadata

Не поддерживается. BitmapImage не поддерживает свойство Metadata и создает исключение NotSupportedException.

Palette

Получает цветовую палитру растрового изображения, если она задана.

(Унаследовано от BitmapSource)
PixelHeight

Получает высоту растрового изображения в пикселях.

(Унаследовано от BitmapSource)
PixelWidth

Получает ширину растрового изображения в пикселях.

(Унаследовано от BitmapSource)
Rotation

Получает или задает угол для поворота BitmapImage.

SourceRect

Получает или задает прямоугольник, который используется в качестве источника для BitmapImage.

StreamSource

Получает или задает исходный поток BitmapImage.

UriCachePolicy

Получает или задает значение, представляющее текущую политику кэширования изображений из источника HTTP.

UriSource

Получает или задает источник Uri для BitmapImage.

Width

Возвращает ширину растрового изображения в независимых от устройства единицах (1/96 дюйма на единицу).

(Унаследовано от BitmapSource)

Методы

ApplyAnimationClock(DependencyProperty, AnimationClock)

Применяет AnimationClock к заданному DependencyProperty. Если свойство уже анимировано, используется эстафетное поведение SnapshotAndReplace.

(Унаследовано от Animatable)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

Применяет AnimationClock к заданному DependencyProperty. Если свойство уже является анимированным, используется указанное поведение HandoffBehavior.

(Унаследовано от Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline)

Применяет анимацию к указанному DependencyProperty. Анимация начинается при отрисовке следующего кадра. Если указанное свойство уже анимировано, используется поведение перемещения SnapshotAndReplace.

(Унаследовано от Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Применяет анимацию к указанному DependencyProperty. Анимация начинается при отрисовке следующего кадра. Если указанное свойство уже является анимированным, используется указанное поведение HandoffBehavior.

(Унаследовано от Animatable)
BeginInit()

Сигнализирует о начале инициализации объекта BitmapImage.

CheckAccess()

Определяет, имеет ли вызывающий поток доступ к этому DispatcherObject.

(Унаследовано от DispatcherObject)
CheckIfSiteOfOrigin()

Проверяет, получено ли исходное содержимое точечного рисунка из известного узла источника. Этот метод позволяет проверить безопасность операций копирования пикселей.

(Унаследовано от BitmapSource)
ClearValue(DependencyProperty)

Очищает локальное значение свойства. Очищаемое свойство задается идентификатором DependencyProperty.

(Унаследовано от DependencyObject)
ClearValue(DependencyPropertyKey)

Очищает локальное значение доступного только для чтения свойства. Очищаемое свойство задается ключом DependencyPropertyKey.

(Унаследовано от DependencyObject)
Clone()

Создает изменяемый клон данного объекта BitmapImage, делая глубокие копии значений этого объекта.

CloneCore(Freezable)

Делает этот экземпляр глубокой копией указанного объекта BitmapSource. При копировании свойств зависимостей этот метод копирует ссылки на ресурсы и привязки данных (которые могут уже не быть разрешимыми), но не копирует анимации и их текущие значения.

(Унаследовано от BitmapSource)
CloneCurrentValue()

Создает модифицируемый клон данного объекта BitmapImage, делая глубокие копии текущих значений этого объекта. Ссылки на ресурсы, привязки данных и анимации не копируются, но копируются их текущие значения.

CloneCurrentValueCore(Freezable)

Делает этот экземпляр изменяемой глубокой копией указанной коллекции BitmapSource с использованием текущих значений свойств. Ссылки на ресурсы, привязки данных и анимации не копируются, но копируются их текущие значения.

(Унаследовано от BitmapSource)
CoerceValue(DependencyProperty)

Приводит значение указанного свойства зависимостей. Это осуществляется путем вызова какой-либо функции CoerceValueCallback, указанной в метаданных свойства зависимостей, которое существует в вызывающем объекте DependencyObject.

(Унаследовано от DependencyObject)
CopyPixels(Array, Int32, Int32)

Копирует данные пикселей растрового изображения в массив пикселей с заданным шагом начиная с заданного смещения.

(Унаследовано от BitmapSource)
CopyPixels(Int32Rect, Array, Int32, Int32)

Копирует данные пикселей растрового изображения из заданного прямоугольника в массив пикселей с заданным шагом начиная с заданного смещения.

(Унаследовано от BitmapSource)
CopyPixels(Int32Rect, IntPtr, Int32, Int32)

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

(Унаследовано от BitmapSource)
CreateInstance()

Инициализирует новый экземпляр класса Freezable.

(Унаследовано от Freezable)
CreateInstanceCore()

Если реализуется в производном классе, создает новый экземпляр производного класса Freezable.

(Унаследовано от Freezable)
EndInit()

Сигнализирует о завершении инициализации объекта BitmapImage.

Equals(Object)

Определяет, является ли указанный DependencyObject эквивалентом текущего DependencyObject.

(Унаследовано от DependencyObject)
Freeze()

Делает текущий объект неизменяемым и присваивает его свойству IsFrozen значение true.

(Унаследовано от Freezable)
FreezeCore(Boolean)

Делает экземпляр BitmapSource или производный класс постоянным.

(Унаследовано от BitmapSource)
GetAnimationBaseValue(DependencyProperty)

Возвращает не анимированное значение указанного объекта DependencyProperty.

(Унаследовано от Animatable)
GetAsFrozen()

Создает фиксированную копию объекта Freezable, используя базовые (не анимационные) значения свойств. Так как копия является фиксированной, копируются только ссылки на фиксированные вложенные объекты.

(Унаследовано от Freezable)
GetAsFrozenCore(Freezable)

Делает этот экземпляр клоном указанного объекта BitmapSource.

(Унаследовано от BitmapSource)
GetCurrentValueAsFrozen()

Создает фиксированную копию объекта Freezable с использованием текущих значений свойств. Так как копия является фиксированной, копируются только ссылки на фиксированные вложенные объекты.

(Унаследовано от Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Делает этот экземпляр зафиксированным клоном указанного объекта BitmapSource. Ссылки на ресурсы, привязки данных и анимации не копируются, но копируются их текущие значения.

(Унаследовано от BitmapSource)
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)

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

(Унаследовано от Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Этот элемент поддерживает инфраструктуру Windows Presentation Foundation (WPF) и не предназначен для использования непосредственно из кода.

(Унаследовано от 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()

Создает строковое представление данного объекта на базе языка и региональных параметров.

(Унаследовано от ImageSource)
ToString(IFormatProvider)

Создает строковое представление данного объекта на основе переданного объекта IFormatProvider. Если значение поставщика равно null, используется CurrentCulture.

(Унаследовано от ImageSource)
VerifyAccess()

Обеспечивает наличие у вызывающего потока доступ к этому DispatcherObject.

(Унаследовано от DispatcherObject)
WritePostscript()

Вызывает событие Changed для объекта Freezable и вызывает его метод OnChanged(). Классы, производные от Freezable, должны вызывать этот метод в конце любого API, который изменяет члены класса, не сохраненные в виде свойств зависимостей.

(Унаследовано от Freezable)
WritePreamble()

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

(Унаследовано от Freezable)

События

Changed

Происходит, когда изменяется класс Freezable или объект, который входит в его состав.

(Унаследовано от Freezable)
DecodeFailed

Происходит при неудаче загрузки изображения вследствие повреждения его заголовка.

(Унаследовано от BitmapSource)
DownloadCompleted

Происходит при полном завершении загрузки содержимого точечного рисунка.

(Унаследовано от BitmapSource)
DownloadFailed

Происходит при невозможности загрузки содержимого точечного рисунка.

(Унаследовано от BitmapSource)
DownloadProgress

Происходит при изменении состояния хода загрузки содержимого точечного рисунка.

(Унаследовано от BitmapSource)

Явные реализации интерфейса

IFormattable.ToString(String, IFormatProvider)

Форматирует значение текущего экземпляра, используя указанный формат.

(Унаследовано от ImageSource)

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

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