BitmapSource Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt einen einzelnen, konstanten Satz von Pixeln mit einer bestimmten Größe und Auflösung dar.
public ref class BitmapSource abstract : System::Windows::Media::ImageSource
[System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)]
public abstract class BitmapSource : System.Windows.Media.ImageSource
[<System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)>]
type BitmapSource = class
inherit ImageSource
interface DUCE.IResource
[<System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)>]
type BitmapSource = class
inherit ImageSource
Public MustInherit Class BitmapSource
Inherits ImageSource
- Vererbung
- Abgeleitet
- Attribute
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie ein BitmapSource erstellt und als Quelle eines Steuerelements Image verwendet wird.
// Define parameters used to create the BitmapSource.
PixelFormat pf = PixelFormats.Bgr32;
int width = 200;
int height = 200;
int rawStride = (width * pf.BitsPerPixel + 7) / 8;
byte[] rawImage = new byte[rawStride * height];
// Initialize the image with data.
Random value = new Random();
value.NextBytes(rawImage);
// Create a BitmapSource.
BitmapSource bitmap = BitmapSource.Create(width, height,
96, 96, pf, null,
rawImage, rawStride);
// Create an image element;
Image myImage = new Image();
myImage.Width = 200;
// Set image source.
myImage.Source = bitmap;
' Define parameters used to create the BitmapSource.
Dim pf As PixelFormat = PixelFormats.Bgr32
Dim width As Integer = 200
Dim height As Integer = 200
Dim rawStride As Integer = CType((width * pf.BitsPerPixel + 7) / 8, Integer)
Dim rawImage(rawStride * height) As Byte
' Initialize the image with data.
Dim value As New Random()
value.NextBytes(rawImage)
' Create a BitmapSource.
Dim bitmap As BitmapSource = BitmapSource.Create(width, height, 96, 96, pf, Nothing, rawImage, rawStride)
' Create an image element;
Dim myImage As New Image()
myImage.Width = 200
' Set image source.
myImage.Source = bitmap
Im folgenden Codebeispiel wird die BitmapSource abgeleitete Klasse verwendet, BitmapImageum eine Bitmap aus einer Bilddatei zu erstellen und als Quelle eines Steuerelements Image zu verwenden.
// 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
Hinweise
BitmapSourceist der grundlegende Baustein der Windows Presentation Foundation(WPF)-Bildgebungspipeline, die konzeptionell einen einzelnen konstanten Satz von Pixeln mit einer bestimmten Größe und Auflösung darstellt. Ein BitmapSource kann ein einzelner Frame in einer Bilddatei sein, die ein Decoder bereitstellt, oder es kann das Ergebnis einer Transformation sein, die mit einem BitmapSource eigenen ausgeführt wird. BitmapSource wird nicht verwendet, um ein Mehrrahmenbild oder eine Animation darzustellen.
Windows Presentation Foundation (WPF) unterstützt nativ die Komprimierung und Dekomprimierung von Bitmapbildern (BMP), Graphics Interchange Format (GIF), Joint Photographics Experts Group (JPEG), Portable Network Graphics (PNG) und Tagged Image File Format (TIFF).
Für Bitmapdecodierungsszenarien BitmapSource wird die automatische Codecermittlung basierend auf den installierten Codecs auf dem System des Benutzers verwendet.
Die maximale Höhe und Breite eines Bilds beträgt 2^16 Pixel bei 32 Bits pro Kanal * 4 Kanälen. Die maximale Größe eines BitmapSource beträgt 2^32 Bytes (64 Gigabyte) und die maximale Bildgröße beträgt vier Gigapixel. Die Minimale Bildgröße ist 1x1.
Konstruktoren
BitmapSource() |
Initialisiert eine neue Instanz der BitmapSource-Klasse. |
Eigenschaften
CanFreeze |
Ruft einen Wert ab, der anzeigt, ob das Objekt als nicht änderbar festgelegt werden kann. (Geerbt von Freezable) |
DependencyObjectType |
Ruft die ab, die DependencyObjectType den CLR-Typ dieser instance umschließt. (Geerbt von DependencyObject) |
Dispatcher |
Ruft den Dispatcher ab, der diesem DispatcherObject zugeordnet ist. (Geerbt von DispatcherObject) |
DpiX |
Ruft die horizontalen Punkte pro Zoll (dpi) des Bilds ab. |
DpiY |
Ruft die vertikalen Punkte pro Zoll (dpi) des Bilds ab. |
Format |
Ruft das systemeigene PixelFormat der Bitmapdaten ab. |
HasAnimatedProperties |
Ruft einen Wert ab, der angibt, ob einer der Abhängigkeitseigenschaften dieses Objekts ein oder mehrere AnimationClock-Objekte zugeordnet sind. (Geerbt von Animatable) |
Height |
Ruft die Höhe der Quell-Bitmap in geräteunabhängigen Einheiten (1/96 Zoll pro Einheit) ab. |
IsDownloading |
Ruft einen Wert ab, der angibt, ob der BitmapSource-Inhalt gegenwärtig heruntergeladen wird. |
IsFrozen |
Ruft einen Wert ab, der angibt, ob das Objekt derzeit geändert werden kann. (Geerbt von Freezable) |
IsSealed |
Ruft einen Wert ab, der angibt, ob diese Instanz derzeit versiegelt (schreibgeschützt) ist. (Geerbt von DependencyObject) |
Metadata |
Ruft die Metadaten ab, die diesem Bitmap-Bild zugeordnet sind. |
Palette |
Ruft die Farbpalette der Bitmap ab (sofern angegeben). |
PixelHeight |
Ruft die Höhe der Bitmap in Pixeln ab. |
PixelWidth |
Ruft die Breite der Bitmap in Pixeln ab. |
Width |
Ruft die Breite der Bitmap in geräteunabhängigen Einheiten ab (1/96 Zoll pro Einheit). |
Methoden
ApplyAnimationClock(DependencyProperty, AnimationClock) |
Wendet einen AnimationClock auf die angegebene DependencyProperty an. Wenn die Eigenschaft bereits animiert wird, wird das SnapshotAndReplace-Übergabeverhalten verwendet. (Geerbt von Animatable) |
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) |
Wendet einen AnimationClock auf die angegebene DependencyProperty an. Wenn die Eigenschaft bereits animiert wird, wird das angegebene HandoffBehavior verwendet. (Geerbt von Animatable) |
BeginAnimation(DependencyProperty, AnimationTimeline) |
Wendet eine Animation auf die angegebene DependencyProperty an. Die Animation wird gestartet, wenn der nächste Frame gerendert wird. Wenn die angegebene Eigenschaft bereits animiert wird, wird das SnapshotAndReplace-Übergabeverhalten verwendet. (Geerbt von Animatable) |
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) |
Wendet eine Animation auf die angegebene DependencyProperty an. Die Animation wird gestartet, wenn der nächste Frame gerendert wird. Wenn die angegebene Eigenschaft bereits animiert wird, wird das angegebene HandoffBehavior verwendet. (Geerbt von Animatable) |
CheckAccess() |
Bestimmt, ob der aufrufende Thread auf dieses DispatcherObject zugreifen kann. (Geerbt von DispatcherObject) |
CheckIfSiteOfOrigin() |
Überprüft, ob der Inhalt der Bitmapquelle aus einer bekannten Ursprungssite stammt. Diese Methode wird verwendet, um sicherzustellen, dass das Kopieren von Pixeln sicher ist. |
ClearValue(DependencyProperty) |
Löscht den lokalen Wert einer Eigenschaft. Die Eigenschaft, deren Wert gelöscht werden soll, wird durch einen DependencyProperty-Bezeichner angegeben. (Geerbt von DependencyObject) |
ClearValue(DependencyPropertyKey) |
Löscht den lokalen Wert einer schreibgeschützten Eigenschaft. Die Eigenschaft, deren Wert gelöscht werden soll, wird durch einen DependencyPropertyKey angegeben. (Geerbt von DependencyObject) |
Clone() |
Erstellt einen änderbaren Klon dieser BitmapSource, indem tiefe Kopien der Werte dieses Objekts erzeugt werden. Beim Kopieren von Abhängigkeitseigenschaften kopiert diese Methode Ressourcenverweise und Datenbindungen (die aber möglicherweise nicht mehr aufgelöst werden können), jedoch keine Animationen oder ihre aktuellen Werte. |
CloneCore(Freezable) |
Macht diese Instanz zu einer tiefen Kopie der angegebenen BitmapSource. Beim Kopieren von Abhängigkeitseigenschaften kopiert diese Methode Ressourcenverweise und Datenbindungen (die aber möglicherweise nicht mehr aufgelöst werden können), jedoch keine Animationen oder ihre aktuellen Werte. |
CloneCurrentValue() |
Erstellt einen änderbaren Klon des BitmapSource-Objekts, indem tiefe Kopien der aktuellen Werte dieses Objekts erzeugt werden. Ressourcenverweise, Datenbindungen und Animationen werden nicht kopiert, ihre aktuellen Werte werden jedoch kopiert. |
CloneCurrentValueCore(Freezable) |
Macht diese Instanz mithilfe aktueller Eigenschaftswerte zu einer tiefen Kopie der angegebenen BitmapSource, die geändert werden kann. Ressourcenverweise, Datenbindungen und Animationen werden nicht kopiert, ihre aktuellen Werte werden jedoch kopiert. |
CoerceValue(DependencyProperty) |
Erzwingt den Wert der angegebenen Abhängigkeitseigenschaft. Dies erfolgt durch den Aufruf einer beliebigen CoerceValueCallback-Funktion, die in den Metadaten für die Abhängigkeitseigenschaft angegeben ist, während sie beim aufrufenden DependencyObject beendet wird. (Geerbt von DependencyObject) |
CopyPixels(Array, Int32, Int32) |
Kopiert die Bitmap-Pixeldaten ab dem angegebenen Offset in ein Array von Pixeln mit dem angegebenen Schritt. |
CopyPixels(Int32Rect, Array, Int32, Int32) |
Kopiert die Bitmap-Pixeldaten in dem angegebenen Rechteck ab dem angegebenen Offset in ein Array von Pixeln mit dem angegebenen Schritt. |
CopyPixels(Int32Rect, IntPtr, Int32, Int32) |
Kopiert die Bitmap-Pixeldaten im angegebenen Rechteck. |
Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, Array, Int32) |
Erstellt eine neue BitmapSource aus einem Array von Pixeln. |
Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, IntPtr, Int32, Int32) |
Erstellt eine neue BitmapSource aus einem Array von Pixeln, die sich in nicht verwaltetem Speicher befinden. |
CreateInstance() |
Initialisiert eine neue Instanz der Freezable-Klasse. (Geerbt von Freezable) |
CreateInstanceCore() |
Erstellt beim Implementieren in einer abgeleiteten Klasse eine neue Instanz der abgeleiteten Freezable-Klasse. (Geerbt von Freezable) |
Equals(Object) |
Bestimmt, ob ein angegebenes DependencyObject dem aktuellen DependencyObject entspricht. (Geerbt von DependencyObject) |
Freeze() |
Definiert das aktuelle Objekt als nicht änderbar und legt seine IsFrozen-Eigenschaft auf |
FreezeCore(Boolean) |
Legt eine Instanz von BitmapSource oder einer abgeleiteten Klasse als unveränderlich fest. |
GetAnimationBaseValue(DependencyProperty) |
Gibt den nicht animierten Wert der angegebenen DependencyProperty zurück. (Geerbt von Animatable) |
GetAsFrozen() |
Erstellt eine fixierte Kopie von Freezable mit Basiseigenschaftswerten (nicht animiert). Da die Kopie fixiert ist, werden alle fixierten Unterobjekte als Verweis kopiert. (Geerbt von Freezable) |
GetAsFrozenCore(Freezable) |
Macht diese Instanz zu einem Klon des angegebenen BitmapSource-Objekts. |
GetCurrentValueAsFrozen() |
Erstellt eine fixierte Kopie von Freezable mit aktuellen Eigenschaftswerten. Da die Kopie fixiert ist, werden alle fixierten Unterobjekte als Verweis kopiert. (Geerbt von Freezable) |
GetCurrentValueAsFrozenCore(Freezable) |
Macht diese Instanz zu einem fixierten Klon des angegebenen BitmapSource-Objekts. Ressourcenverweise, Datenbindungen und Animationen werden nicht kopiert, ihre aktuellen Werte werden jedoch kopiert. |
GetHashCode() |
Ruft einen Hashcode für diese DependencyObject ab. (Geerbt von DependencyObject) |
GetLocalValueEnumerator() |
Erstellt einen spezialisierten Enumerator, mit dem bestimmt wird, welche Abhängigkeitseigenschaften dieses DependencyObject über lokal festgelegte Werte verfügen. (Geerbt von DependencyObject) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
GetValue(DependencyProperty) |
Gibt den aktuellen effektiven Wert einer Abhängigkeitseigenschaft für diese Instanz eines DependencyObject zurück. (Geerbt von DependencyObject) |
InvalidateProperty(DependencyProperty) |
Wertet den effektiven Wert für die angegebene Abhängigkeitseigenschaft erneut aus. (Geerbt von DependencyObject) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
OnChanged() |
Wird aufgerufen, wenn das aktuelle Freezable-Objekt geändert wird. (Geerbt von Freezable) |
OnFreezablePropertyChanged(DependencyObject, DependencyObject) |
Stellt sicher, dass entsprechende Kontextzeiger für einen gerade festgelegten DependencyObjectType-Datenmember eingerichtet werden. (Geerbt von Freezable) |
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) |
Dieses Member unterstützt die WPF-Infrastruktur (Windows Presentation Foundation) und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. (Geerbt von Freezable) |
OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Überschreibt die DependencyObject-Implementierung von OnPropertyChanged(DependencyPropertyChangedEventArgs), damit in Reaktion auf eine geänderte Abhängigkeitseigenschaft des Typs Freezable auch Changed-Handler aufgerufen werden. (Geerbt von Freezable) |
ReadLocalValue(DependencyProperty) |
Gibt den lokalen Wert einer Abhängigkeitseigenschaft zurück, wenn dieser vorhanden ist. (Geerbt von DependencyObject) |
ReadPreamble() |
Stellt sicher, dass über einen gültigen Thread auf Freezable zugegriffen wird. Vererber von Freezable müssen diese Methode am Anfang jeder API aufrufen, die Datenmember liest, bei denen es sich nicht um Abhängigkeitseigenschaften handelt. (Geerbt von Freezable) |
SetCurrentValue(DependencyProperty, Object) |
Legt den Wert einer Abhängigkeitseigenschaft fest, ohne deren Wertquelle zu ändern. (Geerbt von DependencyObject) |
SetValue(DependencyProperty, Object) |
Legt den lokalen Wert einer Abhängigkeitseigenschaft fest, die durch ihren Bezeichner angegeben ist. (Geerbt von DependencyObject) |
SetValue(DependencyPropertyKey, Object) |
Legt den lokalen Wert einer schreibgeschützten Abhängigkeitseigenschaft fest, die durch den DependencyPropertyKey-Bezeichner der Abhängigkeitseigenschaft angegeben ist. (Geerbt von DependencyObject) |
ShouldSerializeProperty(DependencyProperty) |
Gibt einen Wert zurück, der angibt, ob Serialisierungsprozesse den Wert der bereitgestellten Abhängigkeitseigenschaft serialisieren sollen. (Geerbt von DependencyObject) |
ToString() |
Erstellt eine Zeichenfolgendarstellung dieses Objekts auf der Grundlage der aktuellen Kultur. (Geerbt von ImageSource) |
ToString(IFormatProvider) |
Erstellt eine Zeichenfolgendarstellung dieses Objekts auf Grundlage des übergebenen IFormatProvider. Wenn der Anbieter |
VerifyAccess() |
Erzwingt, dass der aufrufende Thread auf dieses DispatcherObject zugreifen kann. (Geerbt von DispatcherObject) |
WritePostscript() |
Löst das Changed-Ereignis für das Freezable-Objekt aus und ruft dessen OnChanged()-Methode auf. Klassen, die aus Freezable abgeleitet werden, sollten diese Methode am Ende jeder API aufrufen, die Klassenmember ändert, die nicht als Abhängigkeitseigenschaften gespeichert sind. (Geerbt von Freezable) |
WritePreamble() |
Stellt sicher, dass das Freezable nicht fixiert ist und dass über einen gültigen Threadkontext darauf zugegriffen wird. Vererber von Freezable sollten diese Methode am Anfang jeder API aufrufen, die Datenmember schreibt, bei denen es sich nicht um Abhängigkeitseigenschaften handelt. (Geerbt von Freezable) |
Ereignisse
Changed |
Tritt auf, wenn Freezable oder ein darin enthaltenes Objekt geändert wird. (Geerbt von Freezable) |
DecodeFailed |
Tritt auf, wenn das Bild aufgrund eines fehlerhaften Bildheaders nicht geladen werden kann. |
DownloadCompleted |
Tritt auf, wenn der Bitmapinhalt vollständig heruntergeladen wurde. |
DownloadFailed |
Tritt auf, wenn der Bitmapinhalt nicht heruntergeladen werden konnte. |
DownloadProgress |
Tritt auf, wenn sich der Status beim Herunterladen des Bitmapinhalts geändert hat. |
Explizite Schnittstellenimplementierungen
IFormattable.ToString(String, IFormatProvider) |
Formatiert den Wert der aktuellen Instanz mit dem angegebenen Format. (Geerbt von ImageSource) |