SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

使ってみようASP.NET AJAX Control Toolkit

使ってみようASP.NET AJAX Control Toolkit(入力補助コントロール編2)

ASP.NET AJAX Control Toolkitの利用方法を学習する 後編


  • X ポスト
  • このエントリーをはてなブックマークに追加

PasswordStrengthコントロール

 PasswordStrengthコントロールはパスワードが見破られやすいかどうか視覚的に判断できる機能を持ったエクステンダコントロールです(Extenderが付いていませんが)。ユーザーがパスワードを設定する際に、文字、数字、記号の入力値からそのパスワードの堅牢性が高いかどうかをリアルタイムにコメントさせることが可能です。HelpStatusLabelIDプロパティによりどの文字列が足りないのかラベルに表示させることができますが、ヘルプは英語で表示されるので注意が必要です。

表4
プロパティ名 概要
DisplayPosition インジケータやテキストの表示位置を設定
StrengthIndicatorType 堅牢性をインジケータで表示するかテキストで表示するか設定
BarBorderCssClass StrengthIndicatorTypeプロパティでインジケータを選択した場合に適用するインジケータの外部の「線」を設定する
BarIndicatorCssClass StrengthIndicatorTypeプロパティでインジケータを選択した場合に適用するインジケータの内部のバーの「色」を設定する
PreferredPasswordLength 良しとするパスワードの長さを設定
PrefixText StrengthIndicatorTypeプロパティがTextの時にトップに表示されるテキストを設定
MinimumNumericCharacters 最低限入力するべき数字の数を設定
MinimumSymbolCharacters 最低限入力するべき記号の数を設定
TextStrengthDescriptions StrengthIndicatorTypeプロパティがTextの時に使用するパスワードコメントをセミコロンで分けて設定(最小2個、最大10個)
HelpStatusLabelID ヘルプを表示するラベルを設定
TargetControlID パスワードコメントを表示させる「TextBoxコントロール」のIDを設定

 パスワードの堅牢性を判断するために、数字を5字以上、記号を2字以上、トータルで10字以上入力された際に理想のパスワードであるとするには、次のように設定します。

PasswordStrength.aspx(一部)
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<ajaxToolkit:PasswordStrength ID="PasswordStrength1"
runat="server" MinimumNumericCharacters="5"
MinimumSymbolCharacters="2" PreferredPasswordLength="10"
TargetControlID="TextBox1"
TextStrengthDescriptions="記号を含める必要があります;平均的なパスワードです;理想のパスワードです" HelpHandlePosition="BelowRight" HelpStatusLabelID="Label1"
PrefixText="パスワードの堅牢性: "/>
<br /> <asp:Label ID="Label1" runat="server" Text=""></asp:Label>

 サンプルを実行すると図8~10のようになります(ダウンロードサンプルのファイルは「/PasswordStrength/PasswordStrength.aspx」です)。

図8 サンプル実行直後の画面
図8 サンプル実行直後の画面
図9 上のテキストボックスにパスワード文字列を入力中の画面
図9 上のテキストボックスにパスワード文字列を入力中の画面
図10 下のテキストボックスにパスワード文字列を入力中の画面
図10 下のテキストボックスにパスワード文字列を入力中の画面

MutuallyExclusiveCheckboxExtenderコントロール

 MutuallyExclusiveCheckboxExtenderコントロールは複数のチェックボックスに同一キーを指定し、どれか1つしかチェックできない機能を付加するエクステンダコントロールです。チェックボックスの数だけこのエクステンダコントロールは必要になる点に注意してください。機能的にRadioButtonListコントロールと似ていますが、このMutuallyExclusiveCheckboxExtenderコントロールを利用すると、RadioButtonListでは行えない、一度付けた「チェックを外す」ことも可能となっています。

表5
プロパティ名 概要
Key チェックボックス間をグループ化させるのに使用するユニークキー
TargetControlID グループ化させる「CheckBoxコントロール」のIDを設定

 左側と右側のどちらか一方しか選択させたくない場合は、次のように設定します。今回は二択ですが、チェックボックスのKeyさえ同じにしておけば、複数のチェックボックスから1つだけを選択させることもできます。

MutuallyExclusiveCheckboxExtender.aspx(一部)
    <ajaxToolkit:MutuallyExclusiveCheckBoxExtender         ID="MutuallyExclusiveCheckBoxExtender1"
runat="server" TargetControlID="CheckBox1" Key="Check1" >
</ajaxToolkit:MutuallyExclusiveCheckBoxExtender> <asp:CheckBox ID="CheckBox1" runat="server" Text="左" /> </td> <td style="width: 100px"> <ajaxToolkit:MutuallyExclusiveCheckBoxExtender ID="MutuallyExclusiveCheckBoxExtender2"
runat="server" TargetControlID="CheckBox2" Key="Check1">
</ajaxToolkit:MutuallyExclusiveCheckBoxExtender> <asp:CheckBox ID="CheckBox2" runat="server" Text="右" /> </td>

 サンプルを実行すると図11~13のようになります(ダウンロードサンプルのファイルは「/MutuallyExclusiveCheckboxExtender/MutuallyExclusiveCheckboxExtender.aspx」です)。

図11 サンプル実行直後の画面
図11 サンプル実行直後の画面
図12 右とパンにチェックをつけた画面(左からチェックが外れている)
図12 右とパンにチェックをつけた画面(左からチェックが外れている)
図13 一度右についたチェックを外した画面
図13 一度右についたチェックを外した画面

次のページ
AutoCompleteExtenderコントロール

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
使ってみようASP.NET AJAX Control Toolkit連載記事一覧
この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト ナオキ(ナオキ)

WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS Twitter: @yyamada(公式)、@yyamada/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/1379 2008/08/19 19:20

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング