Automatische Spaltengröße bei ListView

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von xored.

    Automatische Spaltengröße bei ListView

    Hey,

    folgendes Problem:
    Ich habe ein ListView-Control und Columns. Der Inhalt ist dynamisch, also möchte ich die Spaltengröße dem längsten Inhalt anpassen.
    Ich rufe nach dem Befüllen folgendes auf:

    VB.NET-Quellcode

    1. Public Sub AutoSizeListViewColumns(oListView As ListView)
    2. Dim nCol As Integer = 0
    3. Form1.SuspendLayout()
    4. For nCol = 0 To (oListView.Columns.Count - 1)
    5. oListView.Columns(nCol).Width = -1
    6. Next
    7. oListView.Refresh()
    8. Form1.ResumeLayout()
    9. End Sub


    Das klappt bei einigen Columns auch, aber manche werden viel zu klein (siehe Bild). Also der Inhalt wird genau so wie der Titel nicht voll angezeigt. Im Beispiel hier ist neben dem gelben Punkt nämlich noch / 31



    Wo liegt das Problem?
    Vielen Dank.

    Gruß


    Meine Website:
    www.renebischof.de

    Meine erste App (Android):
    PartyPalooza
    Mit welchem Code bekommst Du Punkt und Text in eine ListViewspalte? Spekulatius: Das LV kann die Breite von Grafik und Text nicht erfassen und kann daher nur die Breite vom Text als Maßstab nehmen.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Ich habe jetzt manuell in die Funktion oben den Spaltennamen abgefragt. Wenn der xY ist, soll eine fixe Größe vergeben werden.
    Der Workaround klappt für mich, weil die betroffenen Spalten eh immer gleich breit bleiben.

    Danke


    Meine Website:
    www.renebischof.de

    Meine erste App (Android):
    PartyPalooza