Rubrik: Controls · ListBox & ComboBox | VB-Versionen: VB2005, VB2008 | 11.06.10 |
Heute zeigen wir eine Möglichkeit, wie der Anwender zur Laufzeit einen Eintrag aus einer geöffneten ComboBox-Liste löschen kann. Hierzu fragen wir im KeyDown-Ereignis die ENTF-Taste ab und löschen den gerade selektierten Eintrag via
RemoveAt-Methode. Aber nur dann, wenn die ComboBox-Liste auch aufgeklappt ist!
Private Sub ComboBox1_KeyDown(ByVal sender As Object, _
ByVal e As System.Windows.Forms.KeyEventArgs) Handles ComboBox1.KeyDown
' Wurde die ENTF-Taste gedrückt?
If e.KeyCode = Keys.Delete Then
With DirectCast(sender, ComboBox)
' Falls die Liste aufgeklappt ist...
If .DroppedDown Then
' ... und ein Eintrag selektiert ist...
If .SelectedIndex >= 0 Then
' ... selektierten Eintrag löschen
.Items.RemoveAt(.SelectedIndex)
End If
End If
End With
End If
End Sub