Up/Down キーを使用して、選択した項目 (行) を上下に移動する WPF ListView があります。これは通常、正常に機能します。
ただし、ListView に水平スクロールバーが表示され、最初 (上) の行に上に移動するか、最後の (下) 行のフォーカスがスクロールバーに移動すると、上/下または左/右を使用するときにキーを押すと、垂直スクロール バーと水平スクロール バーが移動します。選択された項目は変化せず、スクロールバーのみが移動します。
上/下キーで常に選択した項目/行を移動したい。最初の行に達した場合、フォーカスは選択した項目 (行) に残り、スクロールバーに移動しないようにする必要があります。そのため、下キーを押すとフォーカスが 2 行目に移動します。最後の行に到達した場合、フォーカスは最後の行に留まり、Up キーを押すと、2 番目から最後の行にフォーカスが移ります。
これは、垂直スクロールバーが表示されていても、水平スクロールバーが表示されていないときに希望どおりに機能します。ただし、両方のスクロールバーが表示されている場合、フォーカスはスクロールバーに移動します。最初または最後の行に到達した後、上/下キーが上記のようにスクロールバーに影響します。
Up/Down キーが常に選択された行に影響し、スクロールには影響しないようにするにはどうすればよいですか。