トニー電の.NETプログラミング講座

技術メルマガ(techmaga.com)のアメブロ準備版です。
一応、期間限定ってことで。


テーマ:

Hello everybody !!! 皆さん、C# programing 頑張っていますか?

皆さんと一緒に .NET プログラミングを学んでいく、「トニー電」です。今日も張り切っていきましょう。

今日は、郵便番号と電話番号のテキストボックスを変更していきましょう。

■郵便番号のテキストボックスを変更する

日本の郵便番号は、「000-0000」のように7桁になっています。はじめに3桁の数字があって、ハイフン、そして4桁の数字ですね。これを振り仮名のようにテキストボックスだけで制限するのは...できないことはないのですが、もっと良いコントロールが用意されています。

まずは、ツールバーの中の「MaskedTextBox」コントロールを、郵便番号のテキストボックスと取り替えます。

image

取り替えた後に、コントロールの名前を textZipCode に変えてください。このように名前を同じにすることで、コードを変更せずに使えます。

マスクテキストの右上にある▲をクリックして、タスクを表示させて「マスクの設定」をクリックします。

image

そうすると、定型入力のダイアログが出てきます。ここで、色々なフォーマットで入力を制限できるわけです。

image

このなかで、ちょうど「郵便番号」がありますよね。これをクリックすると、マスクの部分が変わります。

image

そのまま、OK ボタンをクリックすると、マスクが設定されます。

実行して動作を確認してみましょう。

image

「1234567」と入力すると、自動的に「123-4567」というフォーマットに変えられます。しかも、7桁以上の数字を入れられません。もちろん、アルファベットを入力することもできません。便利ですね。

登録ボタンをクリックして、出力ウィンドウをみてみましょう。

image

zipcode のところが、「123-4567」と入力されていることが分かります。これで郵便番号は大丈夫そうです。

■電話番号のテキストボックスを変更する

同じように、電話番号 textTelephone、FAX textFax、携帯電話 textKtai の3つのテキストボックスも MaskedTextBox コントロールに変更しましょう。

image

電話番号とFAXは、「電話番号」、携帯電話は「携帯電話番号」を設定しておきます。

■メールアドレスの入力を制限する

メールアドレスのテキストボックスは、振り仮名と同じように Validating イベントと Validated イベントを使います。

2つのイベントを textMail コントロールに追加します。

image

コードは次の通りです。

private void textMail_Validating(object sender, CancelEventArgs e)
{
    string text = textMail.Text;
    // 空白の場合はそのまま
    if (text.Length == 0)
        return;

    // ひらがなと空白のみ
    Regex rx = new Regex(@"^[^@\s]+[@]([^.\s]+[.]){1,}[^.\s]+$");
    if (!rx.IsMatch(text))
    {
        this.errorProvider1.SetError(textMail, "正しくないメールアドレスの形式です");
        e.Cancel = true;
    }
}

private void textMail_Validated(object sender, EventArgs e)
{
    // 検証済みの場合はエラーをクリアする
    this.errorProvider1.SetError(textMail, null);
}

正規表現はちょっと難しいですが、「xxxxx@xxxxx.com」 や、「xxxx@xxxx.co.jp」 のようなメールアドレスを入力できます。


どうですか?正規表現で入力を制限する方法がわかったでしょうか。正規表現自体はちょっと複雑で難しいところがありますが、入力制限自体は Validating イベントと Validated イベントを設定すればよいのです。


 


さて、今日はここまでにしておきましょう。


明日は、分類の ComboBox コントロールと、名前や住所の文字数制限を入れていきます。


では、See you again, bye bye !!!



AD
いいね!した人  |  コメント(0)  |  リブログ(0)

トニー 電さんの読者になろう

ブログの更新情報が受け取れて、アクセスが簡単になります

AD

Ameba人気のブログ

ブログをはじめる

たくさんの芸能人・有名人が
書いているAmebaブログを
無料で簡単にはじめることができます。

公式トップブロガーへ応募

多くの方にご紹介したいブログを
執筆する方を「公式トップブロガー」
として認定しております。

芸能人・有名人ブログを開設

Amebaブログでは、芸能人・有名人ブログを
ご希望される著名人の方/事務所様を
随時募集しております。