2017-02-08 18 views
0

У меня есть холст, элементы которого можно перемещать с помощью клавиш со стрелками, однако, когда я выбираю элемент в списке, который в настоящее время находится на холсте. Клавиша со стрелкой отфильтрует список до тех пор, пока он не достигнет дна, а затем переместит элемент на холсте. другая проблема заключается в том, что он будет перемещать элемент в самом низу списка, который теперь выбран.Остановить список из навигации со стрелками C# WPF

ответ

1

Вы можете обрабатывать PreviewKeyDown событие для ListBox:

<ListBox x:Name="lb" PreviewKeyDown="lb_PreviewKeyDown"> 
    <ListBoxItem>1</ListBoxItem> 
    <ListBoxItem>2</ListBoxItem> 
    <ListBoxItem>3</ListBoxItem> 
</ListBox> 

private void lb_PreviewKeyDown(object sender, KeyEventArgs e) 
{ 
    if (e.Key == Key.Down || e.Key == Key.Up) 
     e.Handled = true; 
} 
+0

он работал лакомство, спасибо за вашу помощь. не уверен, почему он был занижен :) – Bish25