在我的Windows phone7(silverlight)應用程序中,我必須限制爲文本框插入符號。基本上我需要只有允許插入字母數字字符。Windows phone7:限制插入文本框的某些鍵
因此,作爲第一步驟I中添加
InputScope="AlphanumericHalfWidth"
然後InputScope="AlphanumericFullWidth"
。
但在這兩種情況下,鍵盤顯示並允許輸入以下字符等等。 @ # $ % & % () !
所以我只是執行下面的邏輯在文本框中KeyDown
事件
if (!((e.PlatformKeyCode >= 48 && e.PlatformKeyCode <= 57) || (e.PlatformKeyCode >= 65 && e.PlatformKeyCode <= 90) || (e.PlatformKeyCode >= 97 && e.PlatformKeyCode <= 122)))
{
e.Handled = true;
}
但事實是它仍然允許進入下列字符的文本框中。 @ # $ % & % () !
無法弄清楚我究竟該如何實現這一目標。如果有人可以引導我限制文本框中除字母數字之外的其他所有字符,那麼真的很感激。謝謝....
非常感謝igrali。是的,這對我有用......但有一點我不清楚。你知道「KeyDown」事件中的「e.PlatformKeyCode」究竟傳遞了什麼。正如你所說,它不完全返回相應的ASCII值。 – JibW 2012-08-07 16:28:07
我不太確定,但您可以在此處找到更多詳細信息:http://msdn.microsoft.com/en-us/library/system.windows.input.keyeventargs.platformkeycode%28v=vs.95%29.aspx – 2012-08-07 17:56:18