dapole88 Geschrieben 10. März 2014 Geschrieben 10. März 2014 Hallo Liebe Gemeinde, ich werd hier gleich verrückt. Ich sitze schon seid längerem an einem Problem, was ich einfach nicht überwältigt bekomme. Ich möchte eine List sortieren. Diese List enthält Objekte meiner eingenen Klasse. Sortierung soll nach Zeit stattfinden. Hier die Klasse: public class Tap:IComparable<Tap> { public int zeit; public int p; public Tap() { } public Tap(int zeit, int p) { this.zeit = zeit; this.p= p; } int IComparable<Tap>.CompareTo(Tap other) { if (this.zeit > other.zeit) return 1; if (this.zeit < other.zeit) return -1; return 0; } } Das Sortieren funktioniert, aber ich habe nach dem Sortieren, immer ganz viele Objekte in der List. Ich kann mir das nicht erklären. Angenommen, es sollten 4 Objekte in meiner Liste sein, sinds nach dem sortieren weit über 10. ( Also dubletten ohne Ende) Ich weiß nicht warum. Sortieren tuhe ich mit tap_list.Sort(); Umgesetzt habe ich es nach diesem Beispiel: Sorting Lists using IComparable and IComparer Interface in .NET - CodeProject Also mir fällt nichts mehr ein. Wenn das nicht geht, muss ich mir morgen, irgendwie anders weiter helfen. Ich finde einfach nicht den Fehler, langsam habe ich das Gefühl, dass es vielleicht am Compact Framework liegt ?!? Ich meine, das ist doch das einfachste, was man eingetlich machen kann Ich bedankt mich im Vorraus und wünsche euch allen ein netten und angenehmen Abend. Grüße dapole88
realgun Geschrieben 10. März 2014 Geschrieben 10. März 2014 Zeig doch mal wie Du die Liste füllst und den Aufruf zum sortieren.
dapole88 Geschrieben 11. März 2014 Autor Geschrieben 11. März 2014 Guten Morgen, also gefüllt wird es an dieser Stelle: (in der list_p sind zudem Zeitpunkt keine dubletten vorhanden) foreach (Point pt in list_p) { double se = Convert.ToDouble(pt.X.ToString()) / xfaktor; double pu = Convert.ToDouble((panel_p.Height - Convert.ToDouble(pt.Y.ToString())) * yfaktor); int s = (int)se; int p = (int)pu; tap_list.Add(new Tap(s,p)); x++; } tap_list.Sort(); Mehr passiert dort eingetlich auch nicht. Sollte mir noch irgendwas auffallen, werd ich es natürlich posten. Grüße dapole88
Gooose Geschrieben 11. März 2014 Geschrieben 11. März 2014 tap_list wird beim jeden Durchlauf des Codeschnipsels mit der Anzahl der Elemente von list_p erhöht. Vielleicht musst du list_p resetten. Wie häufig wird der Code ausgeführt? Ein gut gesetzter Breakpoint kann hier sicherlich auch helfen.
dapole88 Geschrieben 11. März 2014 Autor Geschrieben 11. März 2014 Der Moment: Wenn man den Wald vor lauter Bäumen nicht mehr sieht. Hab ich vorhin auch gemerkt. Bedanke trotzdem mich. die Liste wurde einfach nicht geleert. Das ich das nicht gesehen habe. Unfassbar! Wünsche netten Nachmittag, Grüße dapole88
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden