C#WindowsフォームアプリケーションにTextBoxがあります。TextBoxusingTextChanged()
イベントのユーザータイプとして提案を使用しています。が呼び出されるAutoCompleteResoure
たびに動的に作成しています。TextChanged()
問題は次のとおりです。TextBoxに「j」と入力すると、3つの結果が表示され、2番目の提案は行きたい場所です。キーボードの下矢印キーを押して2番目の提案に移動すると、すべての提案が削除され、TextBoxのテキストが最初の提案に変更されます。これは、キーボードを使用して最初の提案を下回ることができないことを意味します。これは、下キーを押すと、TextBox内のテキストが提案に置き換えられ、TextChanged()
イベントが呼び出され、そのために他の提案がないためです。キーボードを使用してすべての提案を確認するにはどうすればよいですか?に設定AutoCompeleteMode
しましたSuggest
。これがコードです。
private void searchTb_TextChanged(object sender, EventArgs e){
AutoCompleteStringCollection resource = new AutoCompleteStringCollection();
string searchTerm = (sender as TextBox).Text;
searchTb.AutoCompleteCustomSource = getResource(searchTerm);
}
Key.Down
ユーザーが下矢印キーを押したときにイベントを消費しようとしましたが、機能しませんでした。