Hier mal ein kleines Script, wie ihr Listbox Einträge mit der Maus Verschieben und Sortieren könnt.
In Public Class Form1
In Public Class Form1
VB.NET-Quellcode
- Private Sub ListBox1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ListBox1.MouseDown
- If e.Button = Windows.Forms.MouseButtons.Left Then
- ' zu verschiebendes Item speichern
- iLstIndex = ListBox1.SelectedIndex
- Else
- iLstIndex = -1
- End If
- End Sub
- Private Sub ListBox1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ListBox1.MouseMove
- Dim sTempItem As String
- Dim iTempIndex As Integer
- If e.Button = Windows.Forms.MouseButtons.Left And lstFiles.SelectedIndex <> iLstIndex And iLstIndex > -1 Then
- ' aktuellen Index ermitteln
- iTempIndex = ListBox1.SelectedIndex
- ' markiertes Item zwischenspeichern
- sTempItem = ListBox1.Items(iTempIndex)
- ' zuvor geklicktes Item mit aktuellem ersetzten
- ListBox1.Items(iTempIndex) = ListBox1.Items(iLstIndex )
- ' zwischengespeichertes Item an vorige Position
- ListBox1.Items(iLstIndex ) = sTempItem
- ' neuen ListIndex setzten
- iLstIndex = iTempIndex
- End If
- End Sub