Guten Morgen,
erstmal nachträglich frohe Weihnachten und dann meine Frage:
In einem ToolStripDropDown werden Items hinzugefügt. Nun wollte ich, dass auch aus dem Pfad die Unterordner, als Ordner (bzw. MenuItem) in den DropDown hinzugefügt werden. Hoffe, dass annähernd verständlich.
Wie muss ich da vorgehen? Muss erst geprüft werden, ob es Unterverzeichnisse gibt und dann werden diese erstellt? Und anschließend die Items verteilt?
Spoiler anzeigen
Freue mich auf eine Rückmeldung.
erstmal nachträglich frohe Weihnachten und dann meine Frage:
In einem ToolStripDropDown werden Items hinzugefügt. Nun wollte ich, dass auch aus dem Pfad die Unterordner, als Ordner (bzw. MenuItem) in den DropDown hinzugefügt werden. Hoffe, dass annähernd verständlich.
Wie muss ich da vorgehen? Muss erst geprüft werden, ob es Unterverzeichnisse gibt und dann werden diese erstellt? Und anschließend die Items verteilt?
VB.NET-Quellcode
- Public Class FileObject
- Inherits ToolStripMenuItem
- Public Property Path As String
- End Class
- Dim str As String = "\\rs-win1\ablage\ISO\Formulare\1_Allgemein\3_Hinweislisten"
- Private Sub fo_click(ByVal sender As Object, ByVal e As EventArgs)
- Dim tmp As FileObject = CType(sender, FileObject)
- Process.Start(tmp.Path & "\" & tmp.Name)
- End Sub
- Private Sub TSDD_Hinweislisten_DropDownOpening(sender As Object, e As EventArgs) Handles TSDD_Hinweislisten.DropDownOpening
- Dim di As DirectoryInfo = New DirectoryInfo(str)
- Dim fi As FileInfo()
- fi = di.GetFiles("*.pdf", SearchOption.AllDirectories)
- Dim fo As FileObject = Nothing
- TSDD_Hinweislisten.DropDownItems.Clear()
- For i As Integer = 0 To fi.Length - 1
- fo = New FileObject()
- fo.Name = fi(i).Name
- fo.Text = Path.GetFileNameWithoutExtension(fi(i).Name)
- fo.Path = fi(i).DirectoryName
- With TSDD_Hinweislisten
- .DropDownItems.Add(fo)
- .DropDownDirection = ToolStripDropDownDirection.AboveRight
- End With
- AddHandler fo.Click, AddressOf fo_click
- Next i
- Dim liste As Object = TSDD_Hinweislisten.DropDownItems.Cast(Of ToolStripMenuItem).OrderBy(Function(n) n.Text).ToArray
- TSDD_Hinweislisten.DropDownItems.AddRange(liste)
- End Sub
Freue mich auf eine Rückmeldung.
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Sam85“ ()