BitmapSource Osztály

Definíció

Egyetlen, állandó képpontkészletet jelöl egy adott méretben és felbontásban.

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
Öröklődés
Származtatott
Attribútumok

Példák

Az alábbi példakód bemutatja, hogyan hozhat létre és BitmapSource használhatja azt vezérlő forrásként Image .

// 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

Az alábbi kódpéldában egy BitmapSource származtatott osztályt használunk, BitmapImageamely egy képfájlból hoz létre egy bitképet, és azt használja vezérlő forrásként 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

Megjegyzések

BitmapSource a Windows megjelenítési alaprendszer (WPF) képalkotó folyamat alapvető építőeleme, amely elméletileg egyetlen, állandó képpontkészletet jelöl egy bizonyos méretben és felbontásban. A BitmapSource képfájl egyetlen kerete lehet, amelyet a dekóder biztosít, vagy egy önállóan BitmapSource működő átalakítás eredménye lehet. BitmapSource nem használható több képkockás vagy animációs kép megjelenítésére.

A Windows megjelenítési alaprendszer (WPF) natív módon támogatja a bitképek (BMP), a grafikus csomópontok formátuma (GIF), a közös fotószakértői csoport (JPEG), a hordozható hálózati ábrák (PNG) és a címkézett képfájlformátum (TIFF) képek tömörítését és felbontását.

Bitkép-dekódolási forgatókönyvek BitmapSource esetén a felhasználó rendszerére telepített kodekek alapján automatikus kodekfelderítést használ.

A kép maximális magassága és szélessége csatornánként 2^16 képpont, csatornánként 32 bites * 4 csatorna. A maximális képméret BitmapSource 2^32 bájt (64 gigabájt), a maximális képméret pedig négy gigapixel. A minimális képméret 1x1.

Konstruktorok

Name Description
BitmapSource()

Inicializálja a BitmapSource osztály új példányát.

Tulajdonságok

Name Description
CanFreeze

Olyan értéket kap, amely jelzi, hogy az objektum módosítható-e.

(Öröklődés forrása Freezable)
DependencyObjectType

Lekéri a DependencyObjectType példány CLR-típusát körbefuttatót.

(Öröklődés forrása DependencyObject)
Dispatcher

Lekérdezi, Dispatcher hogy ez a társítva van-e DispatcherObject .

(Öröklődés forrása DispatcherObject)
DpiX

Lekéri a kép vízszintes pont/hüvelyk (dpi) pontját.

DpiY

Lekéri a kép függőleges pont/hüvelyk (dpi) pontját.

Format

Lekéri a bitképadatok natív PixelFormat adatait.

HasAnimatedProperties

Olyan értéket kap, amely jelzi, hogy egy vagy több AnimationClock objektum társítva van-e az objektum függőségi tulajdonságainak bármelyikéhez.

(Öröklődés forrása Animatable)
Height

Lekéri a forrásbitkép magasságát az eszközfüggetlen egységekben (egységenként 1/96 hüvelyk).

IsDownloading

Olyan értéket kap, amely jelzi, hogy a BitmapSource tartalom éppen letöltődött-e.

IsFrozen

Olyan értéket kap, amely jelzi, hogy az objektum jelenleg módosítható-e.

(Öröklődés forrása Freezable)
IsSealed

Olyan értéket kap, amely jelzi, hogy a példány jelenleg zárolva van-e (írásvédett).

(Öröklődés forrása DependencyObject)
Metadata

Lekéri a bitképhez társított metaadatokat.

Palette

Lekéri a bitkép színpalettáját, ha van megadva.

PixelHeight

Képpontban adja meg a bitkép magasságát.

PixelWidth

A bitkép szélességét képpontban adja meg.

Width

Lekéri a bitkép szélességét az eszközfüggetlen egységekben (egységenként 1/96 hüvelyk).

Metódusok

Name Description
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

Alkalmazza AnimationClock a megadott DependencyProperty. Ha a tulajdonság már animálva van, a rendszer a megadott HandoffBehavior értéket használja.

(Öröklődés forrása Animatable)
ApplyAnimationClock(DependencyProperty, AnimationClock)

Alkalmazza AnimationClock a megadott DependencyProperty. Ha a tulajdonság már animálva van, a rendszer az SnapshotAndReplace átadási viselkedést használja.

(Öröklődés forrása Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Animációt alkalmaz a megadottra DependencyProperty. Az animáció a következő képkocka megjelenítésekor indul el. Ha a megadott tulajdonság már animálva van, a rendszer a megadott HandoffBehavior tulajdonságot használja.

(Öröklődés forrása Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline)

Animációt alkalmaz a megadottra DependencyProperty. Az animáció a következő képkocka megjelenítésekor indul el. Ha a megadott tulajdonság már animálva van, a rendszer az SnapshotAndReplace átadási viselkedést használja.

(Öröklődés forrása Animatable)
CheckAccess()

Meghatározza, hogy a hívó szál hozzáfér-e ehhez DispatcherObject.

(Öröklődés forrása DispatcherObject)
CheckIfSiteOfOrigin()

Ellenőrzi, hogy a bitkép forrástartalma ismert forráshelyről származik-e. Ezzel a módszerrel biztosítható, hogy a képpontmásolási műveletek biztonságosak legyenek.

ClearValue(DependencyProperty)

Törli egy tulajdonság helyi értékét. A törölni kívánt tulajdonságot egy DependencyProperty azonosító határozza meg.

(Öröklődés forrása DependencyObject)
ClearValue(DependencyPropertyKey)

Törli egy írásvédett tulajdonság helyi értékét. A törölni kívánt tulajdonságot egy DependencyPropertyKey.

(Öröklődés forrása DependencyObject)
Clone()

Ennek egy módosítható klónját BitmapSourcehozza létre, amely az objektum értékeinek részletes másolatát készíti el. A függőségi tulajdonságok másolásakor ez a módszer az erőforrás-hivatkozásokat és az adatkötéseket másolja (de előfordulhat, hogy ezek már nem oldódnak fel), de nem animációkat vagy az aktuális értékeket.

CloneCore(Freezable)

Ez a példány a megadott példány mély másolatává válik BitmapSource. A függőségi tulajdonságok másolásakor ez a módszer az erőforrás-hivatkozásokat és az adatkötéseket másolja (de előfordulhat, hogy ezek már nem oldódnak fel), de nem animációkat vagy az aktuális értékeket.

CloneCurrentValue()

Módosítható klónt hoz létre az BitmapSource objektumról, amely részletes másolatokat készít az objektum aktuális értékeiről. Az erőforráshivatkozások, az adatkötések és az animációk nem másolódnak, de az aktuális értékük igen.

CloneCurrentValueCore(Freezable)

Ez a példány módosítható mély másolattá teszi a megadottat BitmapSource az aktuális tulajdonságértékek használatával. Az erőforráshivatkozások, az adatkötések és az animációk nem másolódnak, de az aktuális értékük igen.

CoerceValue(DependencyProperty)

A megadott függőségi tulajdonság értékét kényszeríti. Ez úgy érhető el, hogy meghívja a függőségi tulajdonság tulajdonság metaadataiban megadott függvényeket CoerceValueCallback a hívás DependencyObjectsorán.

(Öröklődés forrása DependencyObject)
CopyPixels(Array, Int32, Int32)

A bitkép képpontadatait a megadott léptekkel rendelkező képponttömbbe másolja, a megadott eltolástól kezdve.

CopyPixels(Int32Rect, Array, Int32, Int32)

Másolja a bitkép képpontadatait a megadott téglalapon belül egy képponttömbbe, amely a megadott lépéssel rendelkezik a megadott eltolástól kezdve.

CopyPixels(Int32Rect, IntPtr, Int32, Int32)

Másolja a bitkép képpontadatait a megadott téglalapba.

Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, Array, Int32)

Újat BitmapSource hoz létre képponttömbből.

Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, IntPtr, Int32, Int32)

Létrehoz egy újat BitmapSource a nem felügyelt memóriában tárolt képpontokból álló tömbből.

CreateInstance()

Inicializálja a Freezable osztály új példányát.

(Öröklődés forrása Freezable)
CreateInstanceCore()

Ha egy származtatott osztályban implementálják, a származtatott osztály új példányát Freezable hozza létre.

(Öröklődés forrása Freezable)
Equals(Object)

Meghatározza, hogy a megadott DependencyObject érték megegyezik-e az aktuális DependencyObjectértékével.

(Öröklődés forrása DependencyObject)
Freeze()

Az aktuális objektum nem módosítható, és a tulajdonságát a következőre IsFrozenállítjatrue: .

(Öröklődés forrása Freezable)
FreezeCore(Boolean)

Egy példány BitmapSource vagy származtatott osztály nem módosíthatóvá válik.

GetAnimationBaseValue(DependencyProperty)

A megadott DependencyPropertyérték nem animált értékét adja vissza.

(Öröklődés forrása Animatable)
GetAsFrozen()

Az alaptulajdonságok Freezable(nem animált) értékeinek egy fagyasztott másolatát hozza létre. Mivel a másolat le van fagyasztva, a program hivatkozással másolja a befagyott alobjektumokat.

(Öröklődés forrása Freezable)
GetAsFrozenCore(Freezable)

Ez a példány a megadott BitmapSource objektum klónja lesz.

GetCurrentValueAsFrozen()

Az aktuális tulajdonságértékek fagyasztott másolatát Freezable hozza létre. Mivel a másolat le van fagyasztva, a program hivatkozással másolja a befagyott alobjektumokat.

(Öröklődés forrása Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Ez a példány a megadott BitmapSourceklón fagyasztott klónja lesz. Az erőforráshivatkozások, az adatkötések és az animációk nem másolódnak, de az aktuális értékük igen.

GetHashCode()

Ehhez lekéri a DependencyObjectkivonatkódot.

(Öröklődés forrása DependencyObject)
GetLocalValueEnumerator()

Létrehoz egy speciális enumerátort annak meghatározásához, hogy mely függőségi tulajdonságok rendelkeznek helyileg beállított értékekkel.DependencyObject

(Öröklődés forrása DependencyObject)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
GetValue(DependencyProperty)

Egy függőségi tulajdonság aktuális tényleges értékét adja vissza az adott példányon DependencyObject.

(Öröklődés forrása DependencyObject)
InvalidateProperty(DependencyProperty)

Újra kiértékeli a megadott függőségi tulajdonság tényleges értékét.

(Öröklődés forrása DependencyObject)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
OnChanged()

Az aktuális Freezable objektum módosításakor hívható meg.

(Öröklődés forrása Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Ez a tag támogatja a Windows megjelenítési alaprendszer (WPF) infrastruktúrát, és nem közvetlenül a kódból való használatra szolgál.

(Öröklődés forrása Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Biztosítja, hogy a megfelelő környezeti mutatók létre legyenek hozva az DependencyObjectType éppen beállított adattagok számára.

(Öröklődés forrása Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Felülbírálja a DependencyObject változó típusú függőségi tulajdonságra válaszul a kezelők meghívásának OnPropertyChanged(DependencyPropertyChangedEventArgs)Changedvégrehajtását Freezable is.

(Öröklődés forrása Freezable)
ReadLocalValue(DependencyProperty)

Egy függőségi tulajdonság helyi értékét adja vissza, ha létezik.

(Öröklődés forrása DependencyObject)
ReadPreamble()

Biztosítja, hogy a Freezable rendszer érvényes szálról legyen elérhető. A metódus öröklőinek Freezable minden olyan API elején meg kell hívniuk ezt a metódust, amely olyan adattagokat olvas be, amelyek nem függőségi tulajdonságok.

(Öröklődés forrása Freezable)
SetCurrentValue(DependencyProperty, Object)

Beállítja egy függőségi tulajdonság értékét az értékforrás módosítása nélkül.

(Öröklődés forrása DependencyObject)
SetValue(DependencyProperty, Object)

Beállítja egy függőségi tulajdonság helyi értékét, amelyet a függőségi tulajdonság azonosítója határoz meg.

(Öröklődés forrása DependencyObject)
SetValue(DependencyPropertyKey, Object)

Beállítja egy írásvédett függőség tulajdonság helyi értékét, amelyet a DependencyPropertyKey függőségi tulajdonság azonosítója határoz meg.

(Öröklődés forrása DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Olyan értéket ad vissza, amely jelzi, hogy a szerializálási folyamatok szerializálják-e a megadott függőségi tulajdonság értékét.

(Öröklődés forrása DependencyObject)
ToString()

Az objektum sztring-ábrázolását hozza létre az aktuális kultúra alapján.

(Öröklődés forrása ImageSource)
ToString(IFormatProvider)

Sztringképet hoz létre az objektumról az IFormatProvider átadott fájl alapján. Ha a szolgáltató az null, akkor a rendszer használja a szolgáltatót CurrentCulture .

(Öröklődés forrása ImageSource)
VerifyAccess()

Kényszeríti, hogy a hívószál hozzáférhessen ehhez.DispatcherObject

(Öröklődés forrása DispatcherObject)
WritePostscript()

Elindítja az Changed eseményt, Freezable és meghívja annak metódusát OnChanged() . A származtatott Freezable osztályoknak ezt a metódust minden olyan API végén kell meghívni, amely módosítja a nem függőségi tulajdonságokként tárolt osztálytagokat.

(Öröklődés forrása Freezable)
WritePreamble()

Ellenőrzi, hogy a Freezable rendszer nem zárolta-e a elemet, és hogy az érvényes szálkezelési környezetből van-e elérhető. Freezable Az öröklőknek ezt a metódust minden olyan API elején kell meghívni, amely nem függőségi tulajdonságokat tartalmazó adattagoknak ír.

(Öröklődés forrása Freezable)

esemény

Name Description
Changed

Akkor fordul elő, ha a Freezable benne lévő objektum vagy objektum módosul.

(Öröklődés forrása Freezable)
DecodeFailed

Akkor fordul elő, ha a rendszerkép nem töltődik be egy sérült képfejléc miatt.

DownloadCompleted

Akkor fordul elő, ha a bitkép tartalma teljesen le lett töltve.

DownloadFailed

Akkor fordul elő, ha a bitkép tartalma nem tölthető le.

DownloadProgress

Akkor fordul elő, ha a bitkép tartalmának letöltési állapota megváltozott.

Explicit interfész-implementációk

Name Description
IFormattable.ToString(String, IFormatProvider)

Formázza az aktuális példány értékét a megadott formátummal.

(Öröklődés forrása ImageSource)

A következőre érvényes:

Lásd még