連載:VS 2005でいってみようDBプログラミング

第5回 開発生産性を向上させるASP.NET 2.0のサーバ・コントロール

山田 祥寛(http://www.wings.msn.to/
2006/07/01
Page1 Page2 Page3 Page4

Wizardコントロールでウィザード形式の入力画面を作成する

 Wizardコントロールは、その名のとおり、Webアプリケーションでウィザード形式の画面を構築するためのサーバ・コントロールです。Wizardコントロールを利用することで、順に実行させたい複数のステップ(ウィザードの各画面)を、ステップ間のデータ保持やエンドユーザーによる途中ステップへの直接アクセスなどを意識することなく、容易に管理することが可能になります。

 ここまではデータソース・コントロールとデータアクセス・コントロールとの標準的な連携について紹介してきたわけですが、ここではWizardコントロールで入力された内容をデータベースに格納するためにデータソース・コントロール(SqlDataSourceコントロール)を利用する方法について見てみることにしましょう。

 以下では、Wizard/SqlDataSourceコントロールを使用して、コミュニティのメンバ登録ページを作成します。



基本情報を入力して[次へ]ボタンをクリック



追加情報を入力して[完了]ボタンをクリック


図3 ウィザード形式のサンプル・アプリケーション実行例
ここではコミュニティのメンバ登録ページを想定している。ウィザード画面に従って入力を行い、最後のページで[完了]ボタンをクリックすることにより入力データがデータベースに登録される。

 なお、本節のサンプルを実行するには、あらかじめ以下のようなmembersテーブルをSQL Server上に作成しておく必要があります。

フィールド名 データ型 概要
mid INT メンバID(主キー/連番)
name VARCHAR(50) 名前
sex VARCHAR(5) 性別
email VARCHAR(255) E-Mailアドレス
lang VARCHAR(100) 得意な開発言語
self TEXT 自己紹介
表3 membersテーブルの構造

 以下に、具体的な手順を見ていきます。

[1]サーバ・コントロールを配置する

 新規に作成したWebフォーム「Wizard.aspx」に図4の要領でサーバ・コントロールを配置します。


図4 Wizard.aspxのレイアウト
  Wizardコントロール(wiz)を配置。フォーマットは「シンプル」に設定。
  SqlDataSourceコントロール(sds)を配置。

[2]ウィザード・ステップのプロパティを設定する

 次に、配置したWizardコントロールにステップを配置します。ステップとは、ウィザードにおける各入力画面を表す単位です。ステップを追加/編集するには、配置したWizardコントロールの右肩からタスク・メニューを開き、[WizardStep の追加と削除]を選択します。

 以下の[WizardStepコレクション エディタ]ダイアログが表示されますので、ここでウィザード・ステップに必要な基本情報を編集します。


図5 [WizardStepコレクション エディタ]ダイアログ
ウィザード・ステップに関する設定は、[WizardStepコレクション エディタ]ダイアログから行う。ここでは3つのステップを追加している。

 [WizardStepコレクション エディタ]ダイアログやステップ上で指定可能なプロパティについての詳細は、「.NET TIPS:[ASP.NET]Webフォームでウィザード形式のページを作成するには?」を参照してください。

 ここでは以下の表4の要領で、それぞれのステップを定義するものとします。

ステップ プロパティ 設定値
ステップ1 StepType Start
Title 基本情報
ステップ2 StepType Finish
Title 追加情報
ステップ3 StepType Complete
Title 完了
表4 ウィザード・ステップに対するプロパティ設定

[3]ウィザード・ステップを編集する

 次に、作成したウィザードの各ステップを編集します。

 各ステップのレイアウトは、フォーム・デザイナ上から編集できます。編集ステップを切り替えたい場合には、Wizardコントロール上からサイド・バーのリンクをクリックするか、タスク・メニューの[ステップ]一覧から対象のステップを選択してください。

 ここでは、それぞれ以下の図のようにサーバ・コントロールを配置するものとします。





図6 ウィザード・ステップのデザイン
フォーム・デザイナ上からステップを切り替え、サーバ・コントロールを配置することが可能。
  TextBoxコントロール(IDは「txtName」)。
  RadioButtonListコントロール(IDは「rdoSex」)。
  TextBoxコントロール(IDは「txtEmail」)。
  TextBoxコントロール(IDは「txtLang」)。
  TextBoxコントロール(IDは「txtSelf」)。
  Labelコントロール(IDは「lblResult」)。


 INDEX
  Visual Studio 2005でいってみようDBプログラミング
  第5回 開発生産性を向上させるASP.NET 2.0のサーバ・コントロール
    1.GridView/DetailsViewコントロールで一覧/詳細マルチビューを生成する
  2.Wizardコントロールでウィザード形式の入力画面を作成する(1)
    3.Wizardコントロールでウィザード形式の入力画面を作成する(2)
    4.TreeViewコントロールでツリー・メニューを作成する
 
インデックス・ページヘ  「Visual Studio 2005でいってみようDBプログラミング」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間