Listview Collumheader

  • VB.NET

Es gibt 10 Antworten in diesem Thema. Der letzte Beitrag () ist von ralle...just ralle.

    Listview Collumheader

    Hey ho

    Ich hätte 2 Probleme:
    Ein Problem geht zu etwa 10% aus der Überschrift hervor.
    Und zwar:
    Ich habe eine Listview mit 4 Köpfen.

    Das einlesen unter den ersten Kopf klappt ja, aber bei den anderen 3...

    Hier erstmal der Code:

    VB.NET-Quellcode

    1. Public Class Main
    2. WithEvents item As New ListViewItem
    3. Public Sub Verzeichnisse_hinzufügen_1()
    4. For Each Directory As String In My.Computer.FileSystem.GetDirectories(Pfad_Label.Text, FileIO.SearchOption.SearchTopLevelOnly, "*.*")
    5. Dim sFile As String = IO.Path.GetFileName(Directory)
    6. ListView1.Items.Add("[" & sFile & "]", 0)
    7. item.SubItems.Add("Ordner") 'hier soll in den 2ten Kopf zu den Directory "Ordner" hinzugefügt werden (aber es passiert nichts)
    8. Next
    9. End Sub



    In der ersten Spalte werden die Directorys hinzugefügt und in den 2ten soll dann "Ordner".
    Leider denkt das Programm etwas anderes...

    Jetzt zum 2ten Problem:
    Fast jedes mal wenn ich das Projekt in der Entwicklungsumgebung Debuggen will kommtDiese Fehlermeldung:
    Fehler 1 Der Wert vom Typ "String" kann nicht in "System.Windows.Forms.ColumnHeader" konvertiert werden.

    Der Fehler bezieht sich auf deises Codestück:

    Quellcode

    1. Me.MainMenuStrip = Me.MenuStrip1
    2. Me.Name = "Main" '<<<<<
    3. Me.Text = "Form1"
    4. Me.MenuStrip1.ResumeLayout(False)


    Wenn ich dieses Stück wegnehem geht alles Problemlos. Aber mit der Zeit nervt es. ?(
    Auch wenn ich z.B. eine Zahl einsetze kommt die selbe Fehlermeldung nur mit ...Interger...


    Ralle


    VB.NET-Quellcode

    1. Imports System.IO
    2. Public Class Form1
    3. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    4. End Sub
    5. Dim SubItem As ListViewItem
    6. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    7. Dim Directory As String
    8. For Each Directory In My.Computer.FileSystem.GetDirectories("c:\", FileIO.SearchOption.SearchTopLevelOnly, "*.*")
    9. Dim sFile As String = IO.Path.GetFileName(Directory)
    10. With ListView1.Items
    11. SubItem = .Add("[" & sFile & "]", 0)
    12. SubItem.SubItems.Add("Ordner")
    13. End With
    14. Next
    15. End Sub
    16. End Class


    mfg,

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „soulreafer“ ()

    Hey Ho

    Ich bin mir nicht sicher ob das was bringt aber hier:

    Brainfuck-Quellcode

    1. 'Main
    2. '
    3. Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
    4. Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
    5. Me.ClientSize = New System.Drawing.Size(992, 655)
    6. Me.Controls.Add(Me.PictureBox1)
    7. Me.Controls.Add(Me.Do_PfadII)
    8. Me.Controls.Add(Me.Do_Pfad)
    9. Me.Controls.Add(Me.StatusStrip1)
    10. Me.Controls.Add(Me.ListView2)
    11. Me.Controls.Add(Me.Label4)
    12. Me.Controls.Add(Me.Button7)
    13. Me.Controls.Add(Me.Button8)
    14. Me.Controls.Add(Me.Test_PfadII)
    15. Me.Controls.Add(Me.Label3)
    16. Me.Controls.Add(Me.Button1)
    17. Me.Controls.Add(Me.Button6)
    18. Me.Controls.Add(Me.Test_Pfad)
    19. Me.Controls.Add(Me.Pfad_LabelII)
    20. Me.Controls.Add(Me.Pfad_Label)
    21. Me.Controls.Add(Me.Label2)
    22. Me.Controls.Add(Me.Label1)
    23. Me.Controls.Add(Me.Button2)
    24. Me.Controls.Add(Me.Button5)
    25. Me.Controls.Add(Me.Button4)
    26. Me.Controls.Add(Me.Button3)
    27. Me.Controls.Add(Me.TreeView2)
    28. Me.Controls.Add(Me.TreeView1)
    29. Me.Controls.Add(Me.MenuStrip1)
    30. Me.Controls.Add(Me.ListView1)
    31. Me.MainMenuStrip = Me.MenuStrip1
    32. Me.Text = "Form1"
    33. Me.Text = "Main" '<<<<<<<<<<<
    34. Me.MenuStrip1.ResumeLayout(False)
    35. Me.MenuStrip1.PerformLayout()
    36. Me.StatusStrip1.ResumeLayout(False)
    37. Me.StatusStrip1.PerformLayout()
    38. CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).EndInit()
    39. Me.ResumeLayout(False)
    40. Me.PerformLayout()
    Hey Ho

    Du sagst mir das was auch Vb.Net zu mir sagt.

    Wenn ich jedoch Me.Name rausnehme dann funzt trotzdem noch alles.

    Es nervt nur wenn man es vor jedem Debugging rausnehmen muss.

    @Annonator:
    Es klappt auch bei 4 Köpfen.
    Aber wenn es Probs gibt komm ich drauf zurück...
    Hey Ho

    Das 2te Problem hat sich irgendwie von alleine gelöst..naja der "Geist in der Maschine" :huh:

    Jetzt zum 3ten und hoffentlich letzten Prob:

    Wenn ich auf das Laufwerkgehe in der das Programm (also die *.exe) liegt dann wird mir im Listview der Pfad oder besser die Dateien angezeigt. UAch wenn ich auf den zurück-Button klicke passiert nichts. Es werden nur die Daten und Unterverzeichnisse der *.exe angezeigt. Und nicht z.B. Programme, Windows, usw.

    z.B. gehe ich auf "J:\" - alles Ok
    gehe ich jedoch auf "C:\" (dort liegt die *.exe) wird mir im Listview z.B. der komplette dateipfad + z.B. View Commander.xml usw. angezeigt.

    Ich bin am verzweifeln ?(

    hab ein "\" vergessen...Ralle

    vlt liegt auch nur daran das es auf meinem PC liegt wo auch die Entwicklungsumgebung ist...
    Möchte es jm für mich testen...^^


    Ralle²

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ralle...just ralle“ ()