Laden...

Bild aus resx-Datei laden - Immer XamlParseException

Erstellt von Palladin007 vor 10 Jahren Letzter Beitrag vor 10 Jahren 2.768 Views
Palladin007 Themenstarter:in
2.079 Beiträge seit 2012
vor 10 Jahren
Bild aus resx-Datei laden - Immer XamlParseException

Hi,

ich versuche jetzt schon seit geraumer Zeit, zwei Bilder aus einer resx-Datei in mein WPF-Fenster zu bekommen.

Ich bekomme aber immer den gleichen Laufzeit-Fehler:

Fehlermeldung:
XamlParseException:

Der StaticExtension-Wert "SchönesBild" kann nicht zu einer Enumeration, einem statischen Feld oder einer statischen Eigenschaft aufgelöst werden.

Dabei ist egal, wie ich das Bild lade (solange es keinen Compiler-Fehler gibt), oder welches Bild ich laden möchte, es ist immer der gleiche Fehler.

Aktuell kam der Fehler bei dieser Variante, das Bild zu laden:

<Image Source="{x:Static properties:ImageResources.SchönesBild}" />

Designer und Compiler sind zufrieden, beim Compilieren gibts kein Gemecker, erst, wenn ich dann das Programm ausführen möchte und die Resource geladen wird.

Kann mir jemand sagen, was der Fehler bedeutet und wie ich ihn beseitigen kann?
Oder kennt jemand eine bessere Möglichkeit, Bilder aus einer Resourcen-Datei zu laden?

Gruß

NuGet Packages im Code auslesen
lock Alternative für async/await

Beim CleanCode zählen nicht die Regeln, sondern dass wir uns mit diesen Regeln befassen, selbst wenn wir sie nicht befolgen - hoffentlich nach reiflichen Überlegungen.

2.207 Beiträge seit 2011
vor 10 Jahren

Hallo Palladin007,

die Fehlermeldung ist eindeutig. Das Image-Tag erwartet eine Imagesource.

Schau dir mal an, wie die aussieht:

Image.Source-Eigenschaft

Und du gibst ihm, laut XAML einen Enum-Wert (wie dir die Fehlermeldung auch sagt).

Gruss

Coffeebean

Palladin007 Themenstarter:in
2.079 Beiträge seit 2012
vor 10 Jahren

Soll heißen, ich kann das Bild aus der Resourcen-Datei nicht als Image in XAML laden?

Ist ja im Prinzip auch ne Quelle.

NuGet Packages im Code auslesen
lock Alternative für async/await

Beim CleanCode zählen nicht die Regeln, sondern dass wir uns mit diesen Regeln befassen, selbst wenn wir sie nicht befolgen - hoffentlich nach reiflichen Überlegungen.

211 Beiträge seit 2008
vor 10 Jahren

War eine kleine google Anfrage 😉

Accessing image from Resource File in XAML markup

Kontakt & Blog: www.giesswein-apps.at

Palladin007 Themenstarter:in
2.079 Beiträge seit 2012
vor 10 Jahren

Kenne ich leider schon:

<Image Source="{Binding Source={x:Static properties:ImageResources.SchönesBild}}" />

Gleicher Fehler.

PS:

Ich hoffe doch, WPF hat nichts gegen PNG-Bilder mit transparenten Bild-Elementen...

NuGet Packages im Code auslesen
lock Alternative für async/await

Beim CleanCode zählen nicht die Regeln, sondern dass wir uns mit diesen Regeln befassen, selbst wenn wir sie nicht befolgen - hoffentlich nach reiflichen Überlegungen.

2.207 Beiträge seit 2011
vor 10 Jahren

Soll heißen, ich kann das Bild aus der Resourcen-Datei nicht als Image in XAML laden?

Klar. In etwa so:

<UserControl>
<UserControl.Resources>
    <ResourceDictionary>
        <BitmapImage x:Key="name" UriSource="..." />
    </ResourceDictionary>
</UserControl.Resources>
<Border>
    <Image  Source="{StaticResource name}"/>
</Border>
</UserControl>

Gruss

Coffeebean

Palladin007 Themenstarter:in
2.079 Beiträge seit 2012
vor 10 Jahren

Wie kriege ich denn das Bild fehlerfrei in die das BitmapImage?

<BitmapImage x:Key="name" UriSource="{Binding Source={x:Static properties:ImageResources.SchönesBild}}" />

Ist dabei egal, ob UriSource, oder StreamSource, ungeachtet, ob das nun richtige oder falsche Verwendungsweise ist, ich bekomme immer den gleichen Fehler.

PS:

Ich habe in der Ressource nicht den Pfad zum Bild, sondern das ganze Bild selber, also als Bitmap.

NuGet Packages im Code auslesen
lock Alternative für async/await

Beim CleanCode zählen nicht die Regeln, sondern dass wir uns mit diesen Regeln befassen, selbst wenn wir sie nicht befolgen - hoffentlich nach reiflichen Überlegungen.