我的窗口中有 aTextBox
和 a ListView
,我想ListView
在焦点集中时上下移动 ' 的选择TextBox
:
但是,我似乎没有理解我的CommandTarget
声明,它们被忽略了。MSDN 说这是 non- 的默认行为RoutedCommands
,但我尝试使用的移动命令是RoutedUICommands
,所以这可能不是这里的问题。
我错过了什么吗?
我的 XAML 目前看起来像这样(后面的代码是空的):
<Window x:Class="WpfTest.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Test Window">
<StackPanel>
<TextBox>
<TextBox.InputBindings>
<!-- for some reason, these two won't work -->
<KeyBinding Key="Down"
Command="ComponentCommands.MoveDown"
CommandTarget="{Binding ElementName=AllItemsList}"/>
<KeyBinding Key="Up"
Command="ComponentCommands.MoveUp"
CommandTarget="{Binding ElementName=AllItemsList}"/>
</TextBox.InputBindings>
</TextBox>
<ListView x:Name="AllItemsList">
<ListViewItem>Item 1</ListViewItem>
<ListViewItem>Item 2</ListViewItem>
<ListViewItem>Item 3</ListViewItem>
</ListView>
</StackPanel>
</Window>