コンボボックスに問題があります。OnClick
選択された項目に基づいてデータを更新するイベント ハンドラーがあります。問題は、次のシナリオが発生した場合です。
- コンボボックスをドロップダウンして、さまざまなオプションを一覧表示します
- キーボードで入力して、一致する項目を見つけます
- コンボボックスはこの選択を変更し、
OnClick
イベントを呼び出します - この選択/イベントにより画面が更新されます
- コンボ ボックスの外側のどこかをクリックして、フォーカスを外します。
OnClick
コンボボックスは、すでに呼び出されていても、前の選択に戻ります- コンボ ボックスが前の選択に戻っても、
OnClick
再度呼び出されることはありません - この後、コンボボックスは私のデータが実際に表すものとは異なる値を示します
そのため、コンボ ボックスを開いて、ドロップダウン リスト内の項目を見つけるためにキーボードで数文字を入力するとOnClick
、画面が更新されます。しかし、コンボ ボックスの外側のどこかをクリックすると (つまりフォーカスが離れます)、コンボ ボックスは、入力した値ではなく、以前に選択されていた値に戻ります。同時に、OnClick
イベントが発生しないため、画面にロードした値と比較してコンボ ボックスに正しくない値が表示されます。
キーボードで項目を入力するこのシナリオで、コンボ ボックスを選択した項目にとどめるにはどうすればよいですか?