2016-01-14 6 views
0

В настоящее время у меня есть базовая кнопка с WPF, которую пользователь может нажать, чтобы выполнить поиск. Я хочу добавить событие вниз. Что при использовании стандартного VB я могу просто реализовать код e.key, но поскольку я использую WPF, это кажется другим. Я включил мою базовую функцию щелчка ниже, может ли кто-то добавить к ней только так, чтобы она также принимала ключ ввода?Событие Keydown в 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 

ответ

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 набор к ViewModel с свойством MessageCommand объекта ICommand, который реализует поведение кнопки.

Очень хорошее руководство по привязке ввода можно найти here.

+0

Привет, спасибо за ответ, как я могу добавить это привязку ввода? – Gaudreau95

+0

Обновленный ответ с XAML с указанием привязок. –

 Смежные вопросы

  • Нет связанных вопросов^_^