Ja, Erklärung wäre evtl auch gut gewesen^^
noch einer Verbesserung:
Dim int As New List(Of Int16)
Private Sub ListView1\_MouseUp(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ListView1.MouseUp
If ListView1.SelectedIndices.Count = 0 Then
For Each s As Int16 In int
ListView1.SelectedIndices.Add(s)
Next
Else
int.Clear()
For Each s As Int16 In ListView1.SelectedIndices
int.Add(s)
Next
End If
End Sub
Markere ich Elemente im ListView und lasse die Maustaste los, erhalte ich in SelectedIndices.Count die Anzahl der neu ausgewählten Elemente. Sind dabei Elemente markiert, werden die Indices der Elemente in einer Variable int zwischengespeichert. Wurden keine Elemente ausgewählt, was passiert, wenn man auf einen leeren Bereich klickt, wird angewiesen, die zuletzt ausgewählten erneut auszuwählen.
Ich habe hier den letzten Teil in das else gesteckt, da sonst im Count=0-Fall die Liste gelöscht und mit den selben Einträgen erneut befüllt würde… Daher kann man dann auch das löschen ganz bleiben lassen^^
War die Erklärung einleuchtend?