WinForms 2.0 では、ComboBox にオートコンプリート機能があり、入力したテキストで始まる値のみを含むカスタム ドロップダウン リストを表示します。
ただし、有効な値を ComboBox の項目リストに表示されるものだけに制限したい場合は、DropDownStyle
to を設定してDropDownList
、ユーザーが値を入力できないようにします。
ただし、ユーザー入力が必要なオートコンプリート機能を使用できなくなりました。
オートコンプリート機能の使用を許可しながら、リストへの入力を制限する別の方法はありますか? これに対するいくつかのカスタム ソリューションを見たことがあることに注意してください。ただし、一致するオートコンプリート アイテムがドロップダウン リストに表示され、元のリストがそうでない場合でも並べ替えられる方法が本当に気に入っています。
編集:入力された値を検証すること、つまり、ユーザー入力がイベントで有効かどうかTextChanged
、またはイベントを使用しているかどうかをテストすることを考えValidating
ました。問題は、期待される動作は何ですか? それらの値をクリアしますか (空の値も無効です)、またはデフォルト値を使用しますか? 最も近い一致値?
Ps この質問に追加できる他のタグはありますか?