WPF question --- getting keyboard events

  • Thread starter Thread starter John Mott
  • Start date Start date
J

John Mott

Hi all,

If this isn't the right newsgroup it would be great to get a pointer to the
correct one.

I can't get keyboard events in a trivial WPF application, the keydown event
doesn't seem to be fired. The xaml is

<Grid Keyboard.KeyDown="Grid_KeyDown">
</Grid>

and the handler is

private void Grid_KeyDown(object sender, KeyEventargs e)
{
string s = "set a breakpoint here";
}

when i set a breakpoint on the handler it never fires when I type.

Ideas?

thanks,

john
 
Never mind, i found it. I had searched before but missed it. The 'focusable'
property has to be set on an object (like a canvas) before it will get
keyboard events.
 
I also had this issue and once you find focusable, there is decent help on
MSDN. Besides setting Focusable to True, Visible must be true, and you must
set keyboard focus to the item you want to get the event. In XAML, you can
use Loaded="OnLoad" for your page and then in OnLoad you can use
Keyboard.Focus(<UI element>);

Once an element is focusable and has Keyboard focus, it seems to work well.
 
Back
Top