开发者

How to determine the value of key pressed in Windows Phone 7 Numeric Keyboard?

I hooked up an event handler to the KeyDown event of a TextBox. The event handler has an argument of type KeyEventArgs with properties Key and PlatformKeyCode. The issue is for both the 1开发者_运维技巧 and ! keys pressed on the windows phone soft keyboard, the values for Key and PlatformKeyCode are D1 and 49 respectively. I cant tell which key was pressed. Also the Keyboard.Modifiers static property returns "None"

So how do I determine the key that was pressed?


This is a known issue.

KeyDown/OnKeyDown and KeyUp/OnKeyUp issues

You could always read the input values instead and act on 1 / ! seperately.


This very much looks like a bug.

This exists on both the emulator and real devices.

If using the pc keyboard with the emulator the modifier keys are detected on key down so this won't work.

Interestingly, if using a device with a physical keyboard, if the function/shift button is enabled it triggers 2 keydown events when the other button is pressed. One for the correct keycode and one for the modifier key but Keboard.Modifier always equals "None".

It looks like you need to read the textbox value before and after the TextChanged event.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜