Hallo Leute,
ich habe eine Form mit 6 Comboboxen.
In der ersten wird ein Nutzer ausgewählt, in der zweiten steht seine Abteilung.
3, 4 und 5 sind Unterordner, falls es welche gibt.
Ich habe also einen festen Start Pfad, der sich je nach Nutzer, Abteilung und Auswahl des Unterordners verändert.
Das klappt soweit wunderbar.
Nur ist mein Problem, dass wenn der Nutzer einen anderen Unterordner, in einer Combobox auswählt, das ganze nicht mehr funzt.
Hier mein derzeitiger Code:
Problem ist, dass die variable 'folder' immer erweitert und ich komme auf keine Sinnvolle Lösung, den Pfad abzuändern, nachdem
in einer Combobox ein anderer Unterordner ausgewählt wurde.
Habt ihr da einen Vorschlag für mich?
Ich dachte an Rekursion, weiß aber nicht wie man die hier sinnvoll einbauen kann.
ich habe eine Form mit 6 Comboboxen.
In der ersten wird ein Nutzer ausgewählt, in der zweiten steht seine Abteilung.
3, 4 und 5 sind Unterordner, falls es welche gibt.
Ich habe also einen festen Start Pfad, der sich je nach Nutzer, Abteilung und Auswahl des Unterordners verändert.
Das klappt soweit wunderbar.
Nur ist mein Problem, dass wenn der Nutzer einen anderen Unterordner, in einer Combobox auswählt, das ganze nicht mehr funzt.
Hier mein derzeitiger Code:
VB.NET-Quellcode
- Private Function has_Subfolder() As Boolean
- Dim dr As New IO.DirectoryInfo(folder)
- Dim subDR = dr.GetDirectories()
- If Not subDR Is Nothing Then has_Subfolder = True
- Return has_Subfolder
- End Function
- Private Function has_Documents() As Boolean
- Dim dr As New IO.DirectoryInfo(folder)
- Dim fileDR = dr.GetFiles()
- If Not fileDR Is Nothing Then has_Documents = True
- Return has_Documents
- End Function
- Private Sub get_Subfolder(ByVal curCombo As ComboBox)
- For Each dr In IO.Directory.GetDirectories(folder)
- curCombo.Items.Add(IO.Path.GetFileNameWithoutExtension(dr))
- Next
- curCombo.Text = "Bitte auswählen"
- End Sub
- Private Sub get_Documents(ByVal curCombo As ComboBox)
- For Each file As String In IO.Directory.GetFiles(folder)
- curCombo.Items.Add(IO.Path.GetFileNameWithoutExtension(file))
- Next
- curCombo.Text = "Bitte auswählen"
- End Sub
- Private Sub ComboBox2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox2.SelectedIndexChanged
- If ComboBox2.Text <> "" Then
- folder = folder & "\" & ComboBox2.Text
- If has_Subfolder() Then
- get_Subfolder(Me.ComboBox3)
- ElseIf has_Documents() Then
- get_Documents(Me.ComboBox6)
- End If
- End If
- End Sub
Problem ist, dass die variable 'folder' immer erweitert und ich komme auf keine Sinnvolle Lösung, den Pfad abzuändern, nachdem
in einer Combobox ein anderer Unterordner ausgewählt wurde.
Habt ihr da einen Vorschlag für mich?
Ich dachte an Rekursion, weiß aber nicht wie man die hier sinnvoll einbauen kann.