Mr Speicher
Neu angemeldet
- Registriert
- 22 Dez. 2013
- Beiträge
- 83
Hallo ich beschäftige mich gerade mit dem Thema Ressoucendateien hinzufügen, öffnen etc. in Visual Studio 2015 in Verbindung mit C#.
Mir geht es dabei hauptsächlich um eine etwas ältere Lösung die ich gefunden zum öffnen eines Bildes per Stream und ob diese überhaupt noch funktioniert:
Meine Bildressource möchte ich mit einer PictureBox anzeigen. Was an sich schon mal recht einfach über folgenden Code funktioniert:
[src=csharp]pbTest.Image = Properties.Resources.myTestPicture;[/src]
Wenn ich nun den Code von der oben genannten Microsoft Seite für mich verwende, bekomme ich bei der letzten Zeile folgende Fehlermeldung:
Ein Ausnahmefehler des Typs "System.ArgumentException" ist in System.Drawing.dll aufgetreten.Zusätzliche Informationen: Der Wert null ist für stream ungültig.
Vielleicht hat ja jemand eine Idee woran es genau liegen könnte, ich konnte den Fehler bislang nicht finden.
Microsoft Code:
Von mir für mein Beispiel angepasst:
[src=csharp]System.Reflection.Assembly myAssembly;
myAssembly = System.Reflection.Assembly.GetExecutingAssembly();
System.IO.Stream file = myAssembly.GetManifestResourceStream("myAssembly.myTestPicture.jpg");
this.pbTest.Image = Image.FromStream(file);[/src]
Die using-directive System.IO und System.Reflection habe ich auch schon testweise hinzugefügt.
Edit: Danke KaPiTN für die Erklärung.
Mir geht es dabei hauptsächlich um eine etwas ältere Lösung die ich gefunden zum öffnen eines Bildes per Stream und ob diese überhaupt noch funktioniert:
You do not have permission to view link please Anmelden or Registrieren
Meine Bildressource möchte ich mit einer PictureBox anzeigen. Was an sich schon mal recht einfach über folgenden Code funktioniert:
[src=csharp]pbTest.Image = Properties.Resources.myTestPicture;[/src]
Wenn ich nun den Code von der oben genannten Microsoft Seite für mich verwende, bekomme ich bei der letzten Zeile folgende Fehlermeldung:
Ein Ausnahmefehler des Typs "System.ArgumentException" ist in System.Drawing.dll aufgetreten.Zusätzliche Informationen: Der Wert null ist für stream ungültig.
Vielleicht hat ja jemand eine Idee woran es genau liegen könnte, ich konnte den Fehler bislang nicht finden.
Microsoft Code:
[src=csharp]System.Reflection.Assembly thisExe;
thisExe = System.Reflection.Assembly.GetExecutingAssembly();
System.IO.Stream file =
thisExe.GetManifestResourceStream("AssemblyName.ImageFile.jpg");
this.pictureBox1.Image = Image.FromStream(file);[/src]
thisExe = System.Reflection.Assembly.GetExecutingAssembly();
System.IO.Stream file =
thisExe.GetManifestResourceStream("AssemblyName.ImageFile.jpg");
this.pictureBox1.Image = Image.FromStream(file);[/src]
Von mir für mein Beispiel angepasst:
[src=csharp]System.Reflection.Assembly myAssembly;
myAssembly = System.Reflection.Assembly.GetExecutingAssembly();
System.IO.Stream file = myAssembly.GetManifestResourceStream("myAssembly.myTestPicture.jpg");
this.pbTest.Image = Image.FromStream(file);[/src]
Die using-directive System.IO und System.Reflection habe ich auch schon testweise hinzugefügt.
Edit: Danke KaPiTN für die Erklärung.
Zuletzt bearbeitet: