Heute möchten wir Ihnen zwei nützliche Funktionen vorstellen, mit denen sich der gerade selektierte Eintrag innerhalb eines ListView-Controls um eine Position nach oben bzw. nach unten verschieben lässt. ''' <summary> ''' Verschiebt den aktuell selektierten Eintrag um eine Position nach oben ''' </summary> ''' <param name="sender">ListView-Control</param> ''' <returns>True, wenn erfolgreich. Andernfalls False.</returns> Public Function lvItem_Up(ByVal sender As ListView) As Boolean With sender If .SelectedItems.Count = 1 Then ' aktuellen Eintrag und Position merken Dim oItem As ListViewItem = .SelectedItems(0) Dim index = oItem.Index If index > 0 Then ' jetzt den markierten Eintrag löschen .SelectedItems(0).Remove() ' und den "gemerkten" Eintrag eine Position weiter oben einfügen .Items.Insert(index - 1, oItem) ' Eintrag wieder selektieren oItem.Selected = True oItem.EnsureVisible() oItem.Focused = True Return True End If End If End With End Function ''' <summary> ''' Verschiebt den aktuell selektierten Eintrag um eine Position nach unten ''' </summary> ''' <param name="sender">ListView-Control</param> ''' <returns>True, wenn erfolgreich. Andernfalls False.</returns> Public Function lvItem_Down(ByVal sender As ListView) As Boolean With sender If .SelectedItems.Count = 1 Then ' aktuellen Eintrag und Position merken Dim oItem As ListViewItem = .SelectedItems(0) Dim index = oItem.Index If index < .Items.Count - 1 Then ' jetzt den markierten Eintrag löschen .SelectedItems(0).Remove() ' und den "gemerkten" Eintrag eine Position weiter oben einfügen .Items.Insert(index + 1, oItem) ' Eintrag wieder selektieren oItem.Selected = True oItem.EnsureVisible() oItem.Focused = True Return True End If End If End With End Function Aufrufbeispiel: Private Sub btnUp_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles btnUp.Click ' Eintrag eine Position nach oben schieben lvItem_Up(ListView1) End Sub Private Sub btnDown_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles btnDown.Click ' Eintrag um eine Position nach unten schieben lvItem_Down(ListView1) End Sub Dieser Tipp wurde bereits 18.325 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
Neu! sevPopUp 2.0 Dynamische Kontextmenüs! Erstellen Sie mit nur wenigen Zeilen Code Kontextmenüs dynamisch zur Laufzeit. Vordefinierte Styles (XP, Office, OfficeXP, Vista oder Windows 8) erleichtern die Anpassung an die eigenen Anwendung... Tipp des Monats Mai 2024 Hermann Röttger Wochentage eines Datumsbereichs ermitteln Wochentage eines Datumsbereichs ermitteln, optional mit Feiertagsberechnung TOP Entwickler-Paket TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR... |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |