我目前在WPF中有一个基本点击按钮,用户可以按此按钮进行搜索我想添加一个keydown事件。使用标准VB时我可以 只需实现一个e.keycode,但因为我使用的是WPF,所以它似乎有所不同。我已经在下面添加了我的基本点击功能,有人可以添加它以便它也接受输入键吗?
Private Sub BTNSearch_Click(sender As Object, e As EventArgs) Handles BTNSearch.Click
Dim latitude As Double = Double.Parse(TXTLat.Text.Substring(0, TXTLat.Text.IndexOf(","c)))
Dim longitude As Double = Double.Parse(TXTLong.Text.Substring(TXTLong.Text.IndexOf(","c) + 1))
Dim location = New Microsoft.Maps.MapControl.WPF.Location(latitude, longitude)
Dim Pin = New Microsoft.Maps.MapControl.WPF.Pushpin()
BingMap.Children.Add(Pin)
Pin.Location = location
BingMap.Center = location
BingMap.ZoomLevel = "18"
End Sub
答案 0 :(得分:1)
按钮并非真正用于处理键盘输入。如果您希望按键事件触发按钮,则应考虑使用InputBindings
触发ICommand
和KeyBinding
按钮绑定的 <Window>
<Window.InputBindings>
<KeyBinding Key="F5"
Command="{Binding MessageCommand}" />
</Window.InputBindings>
<Button Command="{Binding MessageCommand}">Click Me</Button>
</Window>
,如下所示:
Window
DataContext
将其MessageCommand
设置为具有ICommand
params
属性的ViewModel,以实现按钮的行为。
可以找到关于输入绑定的非常好的教程here。