Listview mit mehreren Abzweigungen auslesen.

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von brouwny.

    Listview mit mehreren Abzweigungen auslesen.

    heyho Visual Basic Profis :) ,
    bin heute mal wieder an die Grenze meines Verstandes und Vorstellungsvermögen geknallt...

    folgendes Problem: (siehe Bild)

    imageshack.us/f/341/unbenanntopf.jpg/


    Ich habe eine Listview(links im Bild) welche als erste column einen statischen Parameter besitzt, und mit einem Subitem gepaart ist.
    das Subitem hat eine oder mehrere Attribute (durch "," getrennt[völlig egal wie Hauptsache getrennt]).
    Diese Listview möchte ich auslesen in Form eines "Baum-"Diagramms. (zur erleichterten visuellen Vorstellung schematisch dargestellt[rechte Hälfte des Bildes]).
    Als Ergebnis soll nun (Reihenfolge egal) das Diagramm ausgelesen werden:

    -Auto grün Limousine schnell
    -Auto grün Limousine langsam
    -Auto grün Kombi schnell
    -Auto grün Kombi langsam
    -Auto grün Cabriolet schnell
    -Auto grün Cabriolet langsam
    -Auto blau Limousine schnell
    -Auto blau Limousine langsam
    -Auto blau Kombi schnell
    -Auto blau Kombi langsam
    -Auto blau Cabriolet schnell
    -Auto blau Cabriolet langsam

    Wie kann ich solch ein Ergebnis ausleiten? ?(

    (Ich bitte zu entschuldigen, wenn es ein Thema mit beschriebener Problematik bereits besprochen wurde.
    Aber wenn man nicht weiß nach was man suchen soll kann man auch nichts finden ;( )

    mfg brouwny ;)
    hi, danke für deine Antwort.

    Ich weiß jetzt nicht genau was du meinst. Ich glaube ich hab mit falsch ausgedrückt.
    es geht hier nicht um die Auswahl der einzelnen Attribute, sondern um die Ausgabe in dem genannten Schema.
    Also: Ich hab die listview und mit einem Buttonklick will ich sämtliche mögliche Reihenfolgen wiedergeben:

    -Auto grün Limousine schnell
    -Auto grün Limousine langsam
    -Auto grün Kombi schnell
    -Auto grün Kombi langsam
    -Auto grün Cabriolet schnell
    -Auto grün Cabriolet langsam
    -Auto blau Limousine schnell
    -Auto blau Limousine langsam
    -Auto blau Kombi schnell
    -Auto blau Kombi langsam
    -Auto blau Cabriolet schnell
    -Auto blau Cabriolet langsam

    (Das mit der "Autolistview" ist jetzt nur ein Beispiel, letzten Endes können natürlich nicht nur 2 oder 3 Zweige pro Attribut vorkommen)
    Die verbale Datenstruktur sieht sehr nach einem xml-Format aus.
    Dieses lässt sich am besten in einem TreeView abbilden.
    ListView :thumbdown:
    DataGridView :thumbup:
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    heyho,
    ich hab mal eure Posts etwas unter die Lupe genommen, aber ich komm nicht drauf was ihr mir damit zeigen wollt...
    @SystemUnknow
    1. die listview ist nicht das Problem, die ist schon programmiert und zeigt die Datensätze, so wie sie sein sollen schon an.
    @beide
    2. die listview mit ihren Trennzeichen ist so vorgegeben, die kann ich leider nicht ändern.
    Möglich wäre aber natürlich eine treeview seperat und visible=false mit hinzuzufügen.
    3. aber dennoch frage ich mich welchen Sinn eine treeview haben sollte, da es ja hier nicht um das Anzeigen des Diagramms geht, sondern lediglich um die
    Ausgabe der Werte (letzten Endes in eine zweite Listview) in dem Daten Schema wie in beiden Posts beschrieben.
    Nur damit wir uns richtig verstehen dieses "Baum"Diagramm ist eine Vorstellhilfe um zu erklären wie man von der Listview zu den Daten Sätzen kommt, kein neues (eingeplantes) Objekt in der Objektgestaltung (welches die Attribute abbilden sollte). Deshalb will ich da auch nichts auswählen, sondern die vorgegebene listview einfach in die Daten Sätze (in eine zweite listview) übertragen.
    Dafür fehlt mir das Schema. (evel. eine Schleife?).
    4. meine einzige Deutungsmöglichkeit die ich mit den treeview dieses Problem lösen könnte ist, indem ich immer die letzten nodes der tiefsten Ebene ausgebe und an diesen dann die möglichen neuen Attribute anhänge. Nachdem alle Attribute angehängt wurden lese ich nun jeden einzelnen Pfad der Treeview aus?... (Geht das, alle "tiefsten Ebenen einer Treeview zu bestimmen und dort dann immer einen neuen node anzuhängen?").
    @RodFromGermany
    5. ich hab mir einmal das xml-Format etwas näher angeschaut. Alles sehr interessant(also danke schon mal für einen kurzen Ausblick in, für mich, neue Bereiche des Programmierens 8-) ). Die xml Daten haben mich sehr an die Datenstruktur von .ini Dateien erinnert, nur etwas komplizierter mit den ganzen ">" "<" "/" usw. :rolleyes: . Aber wie ich damit nun ein'e (imaginäres Baumdiagramm in Form einer) Listview mit ihren mehrfachen Attributen pro Ebene ausleiten kann ist mir fraglich. Evel. könntest du da noch ein paar Worte dazu sagen ;)
    6. Warum DataGridView? wo ist der Unterschied, außer das gridview auf eine maximale Anzahl an Collums beschränkt ist und eben extern auch aufgerufen kann über Access und Co.? Wie kann ich damit arbeiten?
    Danke das ihr noch bei mir seid nach dem langen Text ;)

    mfg brouwny