Zum Inhalt springen

ImageList Tag property immer Null


Empfohlene Beiträge

Geschrieben

Hallo,

wie kann ich die Tag Property eines Image-s innerhalb von ImageList setzen? Egal was ich versuche, ist dieser Tag immer auf Null gesetzt.

Danke,

mm


private void imgTester()

{

    ImageList myList = new ImageList();

    Image myImg = Image.FromFile("D:\\User\\20081219170022876.jpg");


    myImg.Tag = "Hello World";

    Console.WriteLine("myImg.Tag = '{0}'", myImg.Tag); 

    // returns myImg.Tag = 'Hello World'


    myList.Images.Add(myImg);

    Console.WriteLine("Tag = '{0}'", myList.Images[myList.Images.Count - 1].Tag); 

    // returns Tag = ''


    myList.Images[myList.Images.Count - 1].Tag = "Did you hear me?";

    Console.WriteLine("Tag = '{0}'", myList.Images[myList.Images.Count - 1].Tag);

    // returns Tag = ''


    myList.Images[myList.Images.Count - 1].Tag = myImg.Tag;

    Console.WriteLine("Tag = '{0}'", myList.Images[myList.Images.Count - 1].Tag);

    // returns Tag = ''


}

  • 2 Wochen später...
Geschrieben

Mhhhm... Stimmt. *Kopf kratz* Zudem kann man in die Tag - Eigenschaft sowieso irgendwie alles reinkippen. Dann eine Idee, woran's liegt, dass er quasi beim Hinzufügen zur Liste sein Tag "vergisst"?

@ MickeyMiner:

Verbirgt sich denn hinter "myList.Images[myList.Images.Count - 1].Tag" wirklich dein myImg oder hat das eventuell einen anderen Index?

Geschrieben (bearbeitet)

Hast du dir mal die Liste bzw. die Images im Debugger angeschaut?

Oder probier einfach mal myList.Images[myList.Images.Count - 1] in einer temporären Variable zu buffern.

Verbirgt sich denn hinter "myList.Images[myList.Images.Count - 1].Tag" wirklich dein myImg oder hat das eventuell einen anderen Index?

Erm...

  • Leere Liste erstellt.
  • Objekt A hinzugefügt.
  • Letztes Objekt aus der Liste holen (A).Tag
  • Tag des letzten Objekts(A) aus der Liste ändern.
  • Letztes Objekt aus der Liste holen (A).Tag

Ergo: Natürlich.

Bearbeitet von TDM
Geschrieben (bearbeitet)

Sorry, nochmal ich, aber Editierzeit war schon wieder abgelaufen. :(

Hier ein paar alternative Lösungsvorschläge:

Entweder eigene Klasse bauen mit entsprechender Tag - Property bauen oder Liste von Images nehmen. Ist zwar alles nicht besonders schön - gerade in Hinblick auf das komfortable Binden von Imagelisten an Controls, aber schöner geht's anscheinend nicht, wenn man auf die Tags nicht verzichten möchte.

List<Image> ListeImg = new List<Image>();

Image imgBla= Image.FromFile("C:\\Eigene Dateien\\max_muster.jpg");

imgBla.Tag = "Kekse";

ListeImg .Add(imgBla);

(ungetestet)

Viel Erfolg und schöne Grüße.

Bearbeitet von words_of_silence
Rechtschreibfehler korrigiert
Geschrieben

hmm

Hinweise

Die zurückgegebene Bitmap ist eine Kopie des Originalbildes und sollte mithilfe der Image..::.Dispose-Methode zerstört werden.

Also im Debugger konnt ich den Text nichtmal setzen - scheint so, also wäre das nur eine abgespeckte Liste, in der wirklich nur Bildinformationen stehen.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...