myCSharp.de - DIE C# und .NET Community (https://www.mycsharp.de/wbb2/index.php)
- Entwicklung (https://www.mycsharp.de/wbb2/board.php?boardid=3)
-- Grundlagen von C# (https://www.mycsharp.de/wbb2/board.php?boardid=88)
--- Wie kann ich Objekte in Comboboxen mit anderen Objekten vergleichen? (https://www.mycsharp.de/wbb2/thread.php?threadid=122734)


Geschrieben von stony17 am 25.03.2020 um 19:52:
  Wie kann ich Objekte in Comboboxen mit anderen Objekten vergleichen?
Hallo,

ich habe 10 Objekte, welche die Eigenschaft Artikelnr, Artikelkategorie und Qualität haben.

Nun gibt es in meinem Programm auch 10 Combo-Boxen bei welchen jeweils ein Objekt zugewiesen wird.

Nach jeder Zuweisung möchte ich prüfen ob die Artikelkategorie ident ist mit den schon zugewiesen Boxen. Wobei es folgende Ausnahme gibt. Ist die Qualität XX oder YY dann kann diese Prüfung entfallen.

Wie könnte ich das lösen. Meine aktuelle Lösung würde ich mit if Abfragen machen, aber das sieht nicht schön aus!

Danke und lg
stony


Geschrieben von 123thomas am 26.03.2020 um 07:09:
 
Hallo,

ich würde sobald ein Objekt in einer Combobox ausgewählt wird, dies zusätzlich in eine Liste List<DeineKlasse> packen.

Wenn nun das zweite Objekt in der zweiten Combobox ausgewählt wird, wird die gesamte Liste durchlaufen, ob das Objekt, oder die Artikelkategorie, schon vorhanden ist.

Versuch es doch mal und dann geben wir die Tipps wie du es noch verbessern kannst


Geschrieben von gfoidl am 26.03.2020 um 10:29:
 
Hallo 123thomas,

Zitat:
wird die gesamte Liste durchlaufen, ob das Objekt, ..., schon vorhanden ist.

HashSet<T> mit der Contains-Methode wäre da auch möglich und hat den Vorteil dass es vom Aufwand her O(1) statt O(n) ist.

mfG Gü


© Copyright 2003-2020 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 02.04.2020 14:00