1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

C# Mehrdimensionale Liste anlegen

Dieses Thema im Forum ".NET" wurde erstellt von Suchtaaa, 6. November 2016.

  1. Suchtaaa

    Suchtaaa Grünschnabel

    Hey Leute,

    Ich will eine Mehrdimensionale Liste erstellen, welche sich pro Button Klick um eins erweitert, da gibt es jedoch immer eine Fehlermeldung.

    Ich habe die Liste so angelegt:
    Code (C#):
    1.         List<List<Int32>> Liste = new List<List<int>>();
    2.         int MaxLaengeListe = 0;
    Dann will ich das diese Liste pro Button Klick um eins erweitern, das habe ich so probiert:
    Code (C#):
    1.  
    2.             ListeAdd(new List<Int32>());
    3.  
    4.             Liste[MaxLaengeListe][0] = 0;
    5.             Liste[MaxLaengeListe][1] = 1;
    6.  
    7.             MaxLaengeListe++;
    Wenn ich dann auf den Button Klicke kommt jedoch jedesmal eine Fehlermeldung:
    "Ein Ausnahmefehler des Typs "System.ArgumentOutOfRangeException" ist in mscorlib.dll aufgetreten."

    Könnte mir jemand helfen die Liste richtig zu erstellen und zu erweitern?

    LG. Suchtaaa
     
  2. sheel

    sheel I love Asm Administrator

    Hi

    Sollte
    Code (Text):
    1. ListeAdd(new List<Int32>());
    nicht
    Code (Text):
    1. Liste.Add(new List<Int32>());
    sein?

    Jedenfalls, sobald die äußere Liste richtig geaddet wurde, ist Liste[MaxLaengeListe] die neue leere Liste. In die muss man die einzelnen Ints jetzt auch mit Add einfügen, nicht einfach per Zuweisung zu Indexen.

    Btw., mit Liste[Liste.Count - 1] statt Liste[MaxLaengeListe] könnte man sich die Variable MaxLaengeListe sparen.
     
    Zuletzt bearbeitet: 6. November 2016
  3. Suchtaaa

    Suchtaaa Grünschnabel

    Im Programm hatte ich auch Liste.Add :D
    Wie du schon gesagt hast hätte ich einfach nur mit .Add die Werte hinzufügen müssen...

    Und mit Liste.Count-1 funktioniert es ebenfalls super :)
    Dankeschön! :)