2017-11-11 29 views
0

Visual Studio 2015でVisual Basicを使用してアプリケーションを構築しています。このアプリケーションでは、ユーザーがテキストボックスに数字や文字を入力します。しかし、テキストボックスに文字が入力され、ボタンが押されると、ポップアップして「5桁の数字を入力してください」というメッセージボックスが必要です。私はKeyPressを使って数字だけを受け付けるようにすることができますが、この場合、ボタンを押したときにメッセージボックスが表示される必要があります。私は、ボタンを押したときにメッセージボックスで文字入力に応答しているときに、数字入力を受け付けるようにアプリケーションをコーディングする方法がわかりません。どんな助けでも大歓迎です。テキストボックス入力に基づくメッセージボックスのコーディング

答えて

0

編集:申し訳ありませんが、2回目の読書後、私は理解しやすいと思います。

キー入力後、入力フィールドの文字列値を配列に分割します。

配列をループし、値が数値であるかどうかを確認します。 Visual BasicではIsNumeric()で可能でしたが、C#にはそれがないと思います。その場合、あなたのISNUMERIC関数としてこれを使用する:

public bool IsNumeric(string value) 
{ 
    return value.All(char.IsNumber); 
} 

EDIT2を:あなたのケースであなたもループを必要としません。 IsNumeric()関数を介して入力全体をチェックするだけです。しかし、先頭に0が付いていればそれをチェックしてください。そうでない場合は、提案したようにループを使用してください。

+0

値の長さは文字と数字の区別に役立ちませんが、それはどうですか? – CCataldi

+0

また、あなたは私が信じるループなしでもそれを行うことができます:) –