タグ

2012年3月27日のブックマーク (1件)

  • VB.NET - 数字または一部の文字しか入力できないようにする

    テキストボックスで数字または一部の文字しか入力できないようにするには、System.Windows.Forms.TextBox を継承したカスタム コントロールを使う方法が最も手軽です。 KeyPress イベントなどで入力を規制しているサンプルを良く見かけますが、あれでは「貼り付け」の対応ができません。少なくとも、コンテキスト メニューからの [貼り付け] は、キーの入力から排除できるものではありません。これを防ぐために TextChanged イベントと併用しているサンプルもありますが、あれではチラツキが生じます。 どのデバイスで入力されようと、一元で排除できるような機構にした方が楽なのです。だからといって 入力チェックをしなくても良いわけではない です。そういう意味でも、「最終チェックに一任する」という選択肢があることも忘れないでください。 実装方法ですが、先に申し上げたように Sy