Prevent AutoSelect-Verhalten einer System.Window.Forms.ComboBox (C #)

Hintergrund

Ich habe einForms.ComboBox mit einerDropDownStyle = DropDown.

Ich benutze nichtAutoComplete, aber ich habe etwas Ähnliches implementiert, das nicht nur den Textanfang filtert, sondern einen regulären Ausdruck verwendet und alle Elemente anzeigt, die mit dem eingegebenen Text übereinstimmen. Das funktioniert gut.

Wenn ich jedoch den ersten Buchstaben eines übereinstimmenden Elements eingebe, wird dasComboBox kehrt zu seinem ursprünglichen Verhalten zurück und setztDroppedDown = true und auto wählt den ersten Eintrag aus und vervollständigt den Text so, dass er mit dem ausgewählten Element übereinstimmt (ähnlich wie bei @AutoCompleteMode Anhängen). Was ich will, ist keine automatische Auswahl und automatische Vervollständigung.

Was ich bisher gefunden habe ist, dass ich irgendwie verhindern mussSendMessage() mitCB_FINDSTRING angerufen zu werden und @ zu ersetzCB_FINDSTRING mitCB_FINDSTRINGEXACT (MSDN Link).

Ich denke, ich muss die ComboBox-Klasse erweitern, bin mir aber nicht sicher, welche Methoden ich überschreiben muss. Ich arbeite mit C # .NET Framework v3.5.

Fragen

Wie verlängere ich einWindows.Forms.ComboBox, um das automatische Auswahlverhalten zu verhindern?

Links:

Wie kann ich die automatische Auswahl in der ComboBox im Dropdown-Menü verhindern, außer bei exakten Übereinstimmungen? (hat mir nicht geholfen)

Antworten auf die Frage(1)

Ihre Antwort auf die Frage