ユーザー入力として、ユーザー入力としてCONTAIN(始まりではない)の残りのリストをフィルタリングするカスタムコンボボックスを持つWPFがあります。今私はEnterを押したいとドロップダウンの最初の項目が選択された項目です。ユーザーがコンボボックスのEnterキーを押したときに選択された正しい項目
望ましい行動:ここ
前で、私はここからEnterキーを押したときに、DHCはのSelectedItemになります。
が実際に何が起こる:それは「HE」で開始ノードだけだったので、
HEIはおそらく、選択した回答を、(なり
この問題を解決するためには、私が試みましたxaml:
<i:Interaction.Triggers>
<i:EventTrigger EventName="KeyDown" >
<cmd:EventToCommand Command="{Binding KeyPress}"
PassEventArgsToCommand="True" />
</i:EventTrigger>
</i:Interaction.Triggers>
コードにこれを含めて、キー入力機能に過負荷をかけます。
private void OnDownPress(KeyEventArgs e)
{
var key = e.Key.ToString().ToLower();
switch (key)
{
case "up":
break;
case "down"
break;
case "return":
SelectedNode = NodeTokenList[0];
UserInput = NodeTokenList[0].FullNodeName;
break;
}
}
スイッチステートメントのリターン部分にブレークポイントを設定しようとしましたが、スイッチがトリガーされる前に3回押してください。その場合でも、テキストボックスが
もののキーボードナビゲーションがデフォルト
Combobox
に含まれるべき覚えて選択した項目をフィルタリングされたリストの最初の項目に設定します – Steveこれらの行に沿って何かをしているのがうまくいくようです。それに答えるなら、私は受け入れます。しかし、私がドロップダウンをスクロールしようとすると、テキストボックスの値が変更され、文字列に一致するものだけのリストがフィルタリングされ、可能な答えとしてテキストボックスに項目が残されます。 。矢印ボタンを使用して移動できるようにする方法は何ですか? –