私のWindowsphone7(silverlight)アプリケーションでは、テキストボックスへの記号の挿入を制限する必要があります。基本的には、英数字の挿入のみを許可する必要があります。
最初のステップとして追加しました
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;
}
ただし、テキストボックスに次の文字を入力することはできます。@ # $ % & % ( ) !
私がこれをどれだけ正確に達成しなければならないか理解できません。誰かがテキストボックスに挿入される英数字を除く他のすべての文字を制限する方法を教えてくれれば、本当にありがたいです。ありがとう....