!!!ASP.NET 2005 Web サーバー コントロール [ASP.NET 2005][ASP.NET][Visual Studio][C#] *http://msdn.microsoft.com/ja-jp/library/zsyt68f1(v=VS.80).aspx !!種類 !HTML サーバー コントロール *プログラミングできるようにサーバーに公開される HTML 要素 * HTML 要素に厳密に対応 !Web サーバー コントロール *HTML サーバー コントロールよりも多くの組み込み機能 *カレンダー、メニュー、ツリー ビュー コントロールなど *そのオブジェクト モデルが必ずしも HTML 構文を反映しない !検証コントロール *入力コントロールにユーザーが入力した内容を検証するためのロジックが組み込まれているコントロール !ユーザー コントロール *ASP.NET Web ページとしてユーザーが作成するコントロール *ASP.NET ユーザー コントロールは、他の ASP.NET Web ページに埋め込むことができます !!!HTML サーバー コントロール !!概要 *サーバー コード内でプログラミングできる属性を含む HTML 要素 *対応する要素のオブジェクト モデルと厳密に対応しています *既定では、ASP.NET Web ページ上の HTML 要素はサーバーからは使用できません ""ページ上のすべての HTML 要素は、属性 runat="server" を追加することにより、HTML サーバー コントロールに変換できる。コントロールをコード内でメンバとして参照する場合は、コントロールに id 属性も割り当てる必要がある。 !!機能 *マークアップ属性をサーバー コードでプログラムによって操作するためのプロパティを公開 *クライアント ベースのフォームで記述する場合と同じようにイベント ハンドラを記述できるイベントのセット。ただし、イベントはサーバー コードで処理 *クライアント スクリプトでイベントを処理 *コントロールの状態を自動的に保守 *検証コントロールとの対話機能、適切な情報をコントロールに入力したことを検証 !!!Web サーバー コントロール !!概要 *必ずしも HTML サーバー コントロールと一対一には対応しません *データのグリッド表示、日付の選択、メニューの表示など、よく使用されるフォームの機能を提供するコントロールもあります !!機能 *HTML サーバー コントロールのすべての機能 *ブラウザの自動検出 *Templates を使用して一部のコントロールに対して独自のレイアウトを定義 *コントロールのイベントをサーバーにすぐにポストするか、イベントをキャッシュしてページの送信時に発生させるかを指定 *[一貫した外観を定義できるテーマのサポート|http://msdn.microsoft.com/ja-jp/library/wcyt4fxb(v=VS.80).aspx]. !!!検証コントロール !!種類 ,コントロール,検証,説明 ,RequiredFieldValidator,必須,[ユーザーがエントリを省略していないことを確認|http://msdn.microsoft.com/ja-jp/library/e78xxk8k(v=VS.80).aspx] ,CompareValidator,比較,[比較演算子 (<、=、> など) を使用|http://msdn.microsoft.com/ja-jp/library/e303tf05(v=VS.80).aspx] ,RangeValidator,範囲,[下限と上限の間の範囲内であることを確認|http://msdn.microsoft.com/ja-jp/library/bk58fdzx(v=VS.80).aspx] ,RegularExpressionValidator,パターン,[定義されたパターンに一致することを確認|http://msdn.microsoft.com/ja-jp/library/6xh899wy(v=VS.80).aspx] ,CustomValidator,ユーザー定義,[記述した検証ロジックを使用|http://msdn.microsoft.com/ja-jp/library/f5db6z8k(v=VS.80).aspx] !!パターン検査の例 !RegularExpressionValidator コントロール *コントロールをページに追加し、次のプロパティを設定 ,プロパティ,内容 ,ControlToValidate,当性をチェックしているコントロールの ID ,ErrorMessage、Text、Display,[検証が不合格だった場合に表示される 1 つ以上のエラーのテキストと位置を指定するプロパティ|http://msdn.microsoft.com/ja-jp/library/1ze30x3t(v=VS.80).aspx] !ValidationExpression プロパティ *正規表現に設定することにより、比較するパターンを設定 *ビジュアルなデザイナを使用している場合は、RegularExpressionValidator コントロールから定義済みのパターンを選択できます *クライアント側検証では、正規表現は ECMAScript (JavaScript) を使用して評価されます