Seite 1 von 2 12 Letzte
  1. #1
    Avatar von Devon
    Registriert seit
    18.11.2011
    Beiträge
    2.188
    Thanked 1.574 Times in 1.023 Posts

    Standard ListView Image Item - int verwenden?

    Hallo!

    Gibt es die Möglichkeit bei einem Image Item in einer ListView einen String zu verwenden um den Namen des Bildes dort angeben zu können?
    Geändert von Devon (26.01.2016 um 00:55 Uhr)

  2. #2
    Avatar von DMW007
    Registriert seit
    15.11.2011
    Beiträge
    6.081
    Thanked 9.119 Times in 2.996 Posts
    Blog Entries
    5

    Standard AW: ListView Image Item - String verwenden?

    Die Bilder werden einer Listview über eine ImageList zugewiesen. Zur ImageList kann man Image-Objekte hinzufügen. Was auch immer du mit String meinst (URL? Lokaler Pfad? Base64?) ist daher egal, da man in .NET Bilder damit aus allen möglichen Quellen laden kann.

    Beispiel:


    var request = WebRequest.Create("https://u-labs.de/forum/images/ulabs/favicon.ico");
    var response = request.GetResponse();
    var image = Image.FromStream(response.GetResponseStream());

    var imageList = new ImageList();
    imageList.Images.Add(image);
    listView1.LargeImageList = imageList;

    var testItem = new ListViewItem() {
    Text = "Test",
    ImageIndex = 0
    };
    listView1.Items.Add(testItem);



    Die Methode Image.FromFile()​ lädt ein Bild aus dem Dateisystem und mit einem MemoryStream lässt sich auch ein Base64-String entsprechend umwanden. In wie weit das sinnvoll ist, steht wieder auf einem anderen Blatt und hängt stark vom jeweiligen Einsatzzweck ab.


  3. The Following User Says Thank You to DMW007 For This Useful Post:

    Devon (26.01.2016)

  4. #3
    Avatar von Devon
    Registriert seit
    18.11.2011
    Beiträge
    2.188
    Thanked 1.574 Times in 1.023 Posts

    Standard AW: ListView Image Item - String verwenden?

    Um nochmal mein Problem etwas mehr zu erläutern: Also ich benutze ein API um Spielerdaten aus einer Webseite auszulesen. Das funktioniert auch soweit, alles was ich auslese möchte funktioniert. Bis auf das Level / den Rang des Spielers. Der wird eben als "int" angegeben. Will ich dies jedoch als Image darstellen kommt folgende Meldung: Der Typ "int" kann nicht in "string" konvertiert werden. Ist es überhaupt möglich dies dann so darzustellen wie ich es möchte?

  5. #4

    Registriert seit
    03.09.2015
    Beiträge
    135
    Thanked 55 Times in 40 Posts

    Standard AW: ListView Image Item - String verwenden?

    Hi Devon,

    hast du beim Darstellen des Images mal versucht die .ToString()-Methode auf den Rang anzuwenden?
    Mfg

    .\

  6. #5
    Avatar von Devon
    Registriert seit
    18.11.2011
    Beiträge
    2.188
    Thanked 1.574 Times in 1.023 Posts

    Standard AW: ListView Image Item - String verwenden?

    Ja kommt auf den gleichen Fehler heraus. Nur das string nicht in int konvertiert werden kann. Ich will ja nur den Wert einer Variable für den Namen des Bildes verwenden.. muss doch machbar sein oder?
    Geändert von Devon (26.01.2016 um 11:21 Uhr)

  7. #6
    Avatar von DMW007
    Registriert seit
    15.11.2011
    Beiträge
    6.081
    Thanked 9.119 Times in 2.996 Posts
    Blog Entries
    5

    Standard AW: ListView Image Item - String verwenden?

    Was du vor hast macht für mich null Sinn: Strings als Images? Dann Int in String, zwei Beiträge weiter unten ist es dann auf einmal umgekehrt. Bilder in ListViews sind Image-Objekte, und die repräsentieren wie der Name schon sagt ein Bild. Keine Strings oder sonstigen Datentypen, die haben damit nichts zutun - außer eben dass man über einen Dateinamen oder eine URL Bilder aus anderen Quellen laden kann, wie ich in meinem letzten Beitrag bereits gezeigt habe. Etwas großartig anderes kann ich mir hier auch nicht vorstellen, sofern du nicht was ganz anderes machen willst als du behauptest. Beschreibe daher erst mal vernünftig welche Daten von der API nun kommen, was genau wohin umgewandelt werden soll, sowie was du dir erhoffst damit am Ende zu erreichen. Und zwar bitte mit Beispielen, am besten auch mit Code zum Ist-Zustand. Dann haben wir hier die Chance zu verstehen, was du überhaupt machen willst und wo das Problem liegt.


  8. #7
    Avatar von Devon
    Registriert seit
    18.11.2011
    Beiträge
    2.188
    Thanked 1.574 Times in 1.023 Posts

    Standard AW: ListView Image Item - String verwenden?

    Ja hab mich etwas falsch ausgedrückt gehabt. Am besten ich gebe euch die URL zur API (inkl. Framework): klick. Mein ListView sieht derzeit (wenn es ausgefüllt ist) wie folgt aus:

    Name:  ListView.PNG
Hits: 320
Größe:  6,3 KB

    Mein Vorhaben ist es einfach neben dem angegebenen Level des Spielers (in dem Fall 72) das Levelicon anzeigen zu lassen. Sämtliche Icons sind schon in der Imagelist hinzugefügt wurden (1.png, 2.png etc..). Soll am Ende halt so aussehen:

    Name:  ListView2.PNG
Hits: 218
Größe:  8,4 KB

    Eigentlich recht einfach. Aber wie im zweiten Beitrag angegeben gibt er mir Fehler aus wenn ich dies so machen will wie ich es vorhabe. Aktuell sieht das im Code so aus:

         private void button1_Click(object sender, EventArgs e)
    {

    string lastLine = File.ReadLines(Environment.CurrentDirectory + "/Config.txt").Last();
    textBox2.Text = lastLine;
    Wasta api = new Wasta(textBox2.Text);
    int mycredits = api.CreditsLeft(out status);
    toolStripStatusLabel2.Text = Convert.ToString(mycredits);

    Player player = api.PlayerbyName(textBox1.Text, out status);

    double lvl = player.General.level;
    int a;
    a = (int)lvl;

    double exp = player.Details.experience;
    int b;
    b = (int)exp;

    double kills = player.Details.kills;
    int c;
    c = (int)kills;

    double deaths = player.Details.deaths;
    int d;
    d = (int)kills;

    string[] arr = new string[7];
    ListViewItem itm = new ListViewItem();
    arr[0] = "(" + Convert.ToString(lvl) + ")";
    arr[1] = player.General.nickname;
    arr[2] = player.General.country;
    arr[3] = Convert.ToString(exp);
    arr[4] = player.Clan.name;
    itm = new ListViewItem(arr);
    listView1.Items.Add(itm);

    }


    Funktioniert wie gesagt. Nur gibt es halt Probleme das Level dann als Bild neben der Zahl anzeigen zu lassen.

  9. #8
    Avatar von DMW007
    Registriert seit
    15.11.2011
    Beiträge
    6.081
    Thanked 9.119 Times in 2.996 Posts
    Blog Entries
    5

    Standard AW: ListView Image Item - String verwenden?

    Und wo soll da eine Grafik zurückkommen? Ich sehe dort zum Level nur:
    Code:
    level: type int: Level of the player
    Das ist wie du schon selbst gemerkt hast lediglich der Zahlenwert, z.B. 72 auf deinen Screens. Mit der Grafik hat das nichts zutun, die musst du extra laden - zum Beispiel von einer URL. Die API scheint sie nicht zu liefern, also musst du selbst schauen, wie du vom Level zur richtigen Grafik kommst.


  10. #9
    Avatar von Devon
    Registriert seit
    18.11.2011
    Beiträge
    2.188
    Thanked 1.574 Times in 1.023 Posts

    Standard AW: ListView Image Item - String verwenden?

    Kann ich die Zahl nicht verwenden um dann z.B. ZAHL.png in dem ListView anzeigen zu lassen? Sprich als Filenamen (nur halt ohne Endung)?

  11. #10
    Avatar von DMW007
    Registriert seit
    15.11.2011
    Beiträge
    6.081
    Thanked 9.119 Times in 2.996 Posts
    Blog Entries
    5

    Standard AW: ListView Image Item - String verwenden?

    Jetzt verstehe ich langsam was du vor hast. Was du suchst steht eigentlich schon in meine allerersten Antwort hier drin (Post #2), nämlich das ImageIndex-Property des ListViewItems. Wenn alle Ränge fortlaufend durchnummeriert (1,2,3 usw) in der Reihenfolge zur ImageList hinzugefügt werden, setzt du den ImageIndex einfach auf Level - 1. Da gibts dann auch keine Strings weil nur mit Indizes gearbeitet wird und somit auch keine Typumwandlungen (außer ggf. von Double in Integer, aber da reicht ja simples casten).


  12. The Following User Says Thank You to DMW007 For This Useful Post:

    Devon (30.01.2016)

Seite 1 von 2 12 Letzte

Ähnliche Themen

  1. Ubuntu Blu-ray Install Image
    Von CDLF im Forum Linux
    Antworten: 2
    Letzter Beitrag: 27.11.2015, 20:01
  2. Antworten: 1
    Letzter Beitrag: 16.12.2013, 09:14
  3. C# ListView Items in Array speichern
    Von Saad im Forum .Net
    Antworten: 5
    Letzter Beitrag: 09.10.2012, 18:56
  4. [Frage] ListView zum Einloggen Bringen
    Von AmJano im Forum Knuddels Programmierung
    Antworten: 4
    Letzter Beitrag: 26.09.2012, 21:51
  5. VB.Net Textbox Image
    Von rVs14 im Forum .Net
    Antworten: 3
    Letzter Beitrag: 18.06.2012, 15:38
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.