Frage Wie bestimmt man den Wert der Taste in Windows Phone 7 numerische Tastatur gedrückt?


Ich habe einen Event - Handler an den KeyDown Ereignis einer TextBox. Der Event-Handler hat ein Argument vom Typ KeyEventArgs mit Eigenschaften Key und PlatformKeyCode. Das Problem ist sowohl für die 1 und ! Tasten gedrückt auf der Windows Phone Soft Keyboard, die Werte für Key und PlatformKeyCode sind D1 und 49 beziehungsweise. Ich kann nicht sagen, welche Taste gedrückt wurde. Auch der Keyboard.Modifiers statische Eigenschaft gibt zurück "Keiner"

Wie bestimme ich den Schlüssel, der gedrückt wurde?


5
2017-12-01 20:40


Ursprung


Antworten:


Dies ist ein bekanntes Problem.

KeyDown / OnKeyDown und KeyUp / OnKeyUp Probleme

Sie könnten stattdessen immer die Eingabewerte lesen und auf 1 /! separat.


2
2017-12-01 21:28



Das sieht sehr nach einem Fehler aus.

Dies gilt sowohl für den Emulator als auch für echte Geräte.

Wenn Sie die PC-Tastatur mit dem Emulator verwenden, werden die Modifikatortasten auf der Taste erkannt, so dass dies nicht funktioniert.

Interessanterweise löst bei Verwendung eines Geräts mit einer physischen Tastatur, wenn die Funktions- / Umschalttaste aktiviert ist, beim Drücken der anderen Taste 2 Keydown-Ereignisse aus. Eine für den richtigen Schlüsselcode und eine für den Zusatzschlüssel, aber Keboard.Modifier ist immer gleich "None".

Offenbar müssen Sie den Textfeldwert vor und nach dem TextChanged-Ereignis lesen.


1
2017-12-01 21:55