2016-10-19 1 views
0

Ich habe dieses wirklich seltsame Problem mit ComboBoxen.Combobox Wipes Vorschlag beim Drücken der Eingabetaste mit Inhalt gelöscht

Ich habe eine ComboBox mit Einträgen aus einer Datenbank gefüllt. Dieses Problem bezieht sich jedoch nicht auf die Datenbank oder deren Inhalt.

Wenn ich den Abwärtspfeil auf der ComboBox drücke und dann einen Teil des Inhalts eines Elements eintippe, während SuggestAppend aktiviert ist, wird der Text gelöscht, anstatt die Zeile zu vervollständigen. Wenn ich nur tippe, dann tritt das Problem nicht auf. Es ist nur, wenn ich die Liste zuerst ablege.

Sie können dies wiederherstellen, indem Sie eine Combobox in einem leeren Formular erstellen. Geben Sie einige Elemente ein, legen Sie die AutoCompleteSource auf ListItems und AutoCompleteMode auf SuggestAppend fest.

Jetzt beim Ausführen der Anwendung, löschen Sie die Liste, nicht diese Liste verlassen, beginnen Sie einfach einen Teil eines Eintrags eingeben. Drücken Sie dann die Eingabetaste. Es löscht den Inhalt des Kombinationsfelds.

Gibt es einen Weg um diesen Fehler?

+0

Ich weiß nicht, ob es das gewünschte Verhalten ist, aber Sie könnten ein "KeyPress" -Ereignis zu dieser Combobox hinzufügen, die 'YourComboBox.DroppedDown = False 'setzt. Dadurch können Sie nur den Vorschlagsbox sehen und wird nicht gelöscht, wenn Sie die Eingabetaste drücken –

+0

Bitte schreiben Sie dies als Antwort. Es hat mein Problem gelöst und du bist mein Held. – Kayot

Antwort

1

Das Problem tritt nur auf, wenn sowohl der Vorschlagsbox als auch die Box mit den Elementen gleichzeitig angezeigt werden.

einen KeyPress Handler Ihre Combobox hinzufügen und die DroppedDown Eigenschaft auf False wie unten angegeben:

Private Sub YourCombo_KeyPress(sender As Object, e As KeyPressEventArgs) Handles YourCombo.KeyPress 
    YourCombo.DroppedDown = False 
End Sub 

Dies wird die Elemente Feld schließen und halten die Vorschläge Feld sichtbar. Wenn Sie die Eingabetaste drücken, wird der Text nicht mehr gelöscht.

Verwandte Themen