Problem beim Auflisten von Dateien

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Problem beim Auflisten von Dateien

    Moin !

    ich möchte einem Control die Namen von Dateien zuweisen lassen und habe folgendes erstellt:

    Visual Basic-Quellcode

    1. Dim d As System.IO.DirectoryInfo
    2. d = New System.IO.DirectoryInfo(StreetFolder)
    3. If d.GetFiles("*.street").Count = 0 Then
    4. MsgBox("Es wurden keine Straßen gefunden!" & vbCrLf & _
    5. "Pfad: " & StreetFolder & vbCrLf & _
    6. k_Msgbox_CadAdmin & vbCrLf & _
    7. k_Msgbox_Vorzeitig_Ende, MsgBoxStyle.Information, k_AppName_AdressSearchWithoutDB)
    8. ZentralButtonControlling()
    9. Exit Sub
    10. End If
    11. For Each items As String In d.GetFiles("*.street").ToString
    12. AuswahlControl.Items.Add(items)
    13. Next


    Kann mir einer sagen warum bei AuswahlControl.Items.Add(items) so merkwürdige Namen nur zurück gegeben werden?

    Gruß Jan

    jan99 schrieb:

    VB.NET-Quellcode

    1. For Each items As String In d.GetFiles("*.street").ToString
    Du iterierst hier nicht durch die Dateien, sondern das was dir .ToString vom Typ IEnumerable<T>(in diesem Fall entspricht T FileInfooder String) zurückgibt.
    Ich tippe du hast so Namen wie:
    [
    S
    y
    s
    t
    e
    m
    .
    oder? Versuchs mal ohne das .ToString
    Wenn nein, gib mal weitere Beispiele.

    jan99 schrieb:

    AuswahlControl
    ist was für ein Control?
    Hat dieses Control eine Property .DisplayMember?
    Wenn ja, musst Du da den Namen der Property reinschreiben, die angezeigt werden soll.
    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!
    Moin!

    dann bekomme ich die Meldung.

    Fehler 4 Der Wert vom Typ "System.IO.FileInfo" kann nicht in "String" konvertiert werden. quote]

    ... aber jetzt noch eine Lösung gefunden!

    VB.NET-Quellcode

    1. Dim dFiles As System.IO.FileInfo() = d.GetFiles("*.street")
    2. For Each dFile In dFiles
    3. AuswahlControl.Items.Add(dFile.Name)
    4. Next


    Gruß Jan

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

    @EaranMaleasi Jou.

    jan99 schrieb:

    VB.NET-Quellcode

    1. For Each items As String In d.GetFiles("*.street").ToString
    machst Du

    VB.NET-Quellcode

    1. For Each items As String In d.GetFiles("*.street")

    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!