ListView Items Oben Einfügen

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Pixxxas.

    ListView Items Oben Einfügen

    Hallo, wie kann ich am besten meine Items immer Oben Einfügen?
    Sprich das Letzt Hinzugefügte Item soll immer an erster Stelle stehen?

    So lade ich mein ListView;

    VB.NET-Quellcode

    1. Dim li As New ListViewItem
    2. Dim Filename As String
    3. Dim TFile As System.IO.StreamReader
    4. Dim sRGB As String()
    5. Dim S As String
    6. Dim X, Y As Integer
    7. Dim S1, S2, S3, S4, S5, S6, S7, S8, S9, S10 As String
    8. Try
    9. Filename = "F:\DB2017.lst"
    10. ListView1.Items.Clear()
    11. TFile = My.Computer.FileSystem.OpenTextFileReader(Filename)
    12. Do While (TFile.Peek() > -1)
    13. X = ListView1.Items.Count
    14. S = Trim(TFile.ReadLine)
    15. sRGB = S.Split(",")
    16. S1 = sRGB(0)
    17. S2 = sRGB(1)
    18. S3 = sRGB(2)
    19. S4 = sRGB(3)
    20. S5 = sRGB(4)
    21. S6 = sRGB(5)
    22. S7 = sRGB(6)
    23. S8 = sRGB(7)
    24. S9 = sRGB(8)
    25. S10 = sRGB(9)
    26. Dim item As ListViewItem = ListView1.Items.Add(S1)
    27. item.SubItems.Add(S2)
    28. item.SubItems.Add(S3)
    29. item.SubItems.Add(S4)
    30. item.SubItems.Add(S5)
    31. item.SubItems.Add(S6)
    32. item.SubItems.Add(S7)
    33. item.SubItems.Add(S8)
    34. item.SubItems.Add(S9)
    35. item.SubItems.Add(S10)
    36. item.ImageIndex = 1
    37. Loop
    38. Catch ex As Exception
    39. MsgBox(ex.Message)
    40. End Try
    41. li.Checked = True
    42. ToolStripStatusLabel2.Text = "Aufträge: " & ListView1.Items.Count.ToString
    43. TFile.Close()
    @Pixxxas Das musst Du zu Fuß machen.
    Daten in eine Tabelle einlesen und dann in Deiner Reihenfolge hinzufügen.
    Oder
    Nimm ein DataGridView und dann diese Tabelle als DataSource.
    ===
    Schmeiß den VB6-Ranz raus.

    VB.NET-Quellcode

    1. For Each Line in IO.File.ReadLines(DEINE_DATEI)
    2. ' ...
    3. Next

    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!
    @Pixxxas Mach eine List(Of ListViewItem), die Du per Add() befüllst und in einer Dir passenden Reihenfolge ausliest und so Dein ListView befüllst.
    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!
    List<ListViewItem> MyDataList

    Control-Daten -> ListViewItem -> MyDataList -> Deine Datei schreiben
    ..................................................... -> Deine ListView säubern -> Items Setzen

    Auslesen:
    MyDataList -> am Index Lesen

    Obern in die Liste einfügen:
    MyDataListe umdrehen ->ListViewItem Objekt einfügen -> MyDataListe umdrehen -> Deine ListView säubern -> Items Setzen

    Deine Datei lesen:
    Datensatz -> -> ListViewItem -> MyDataList -> ListViewItem Objekt einfügen
    Steht doch alles da.

    Pixxxas schrieb:

    VB.NET-Quellcode

    1. Dim item As ListViewItem = ListView1.Items.Add(S1)
    2. item.SubItems.Add(S2)
    3. item.SubItems.Add(S3)
    4. item.SubItems.Add(S4)
    5. item.SubItems.Add(S5)
    6. item.SubItems.Add(S6)
    7. item.SubItems.Add(S7)
    8. item.SubItems.Add(S8)
    9. item.SubItems.Add(S9)
    10. item.SubItems.Add(S10)
    11. item.ImageIndex = 1

    VB.NET-Quellcode

    1. Dim ll As List(Of ListViewItem)
    2. ' hier Dein Code
    3. ll.Add(Item)
    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!