PROGRAM VISUALBASIC

ASP.NET(VB.NET) MVCモデル入門~HTMLヘルパー(チェックボックス)

HTMLヘルパーのCheckBoxを使ったプログラム

今回は、HTMLヘルパーのチェックボックス(CheckBox)を使ったサンプルプログラムを作りましょう。
チェックボックスは、以下のようなHTMLの要素で、その項目がオン(True)かオフ(False)かを設定することができます。

vbmvc24-1
チェックボックス

新規プロジェクトの作成

新規にプロジェクトを作成します。
今回のサンプルプログラムは、プロジェクト名を「HelperCheckBox」として作成します。
プロジェクトの作成方法は、こちらの記事を参照してください。

ビューモデルの作成

ビューモデルを作成します。
チェックボックスの状態(True or False)を保持するためのプロパティを、Boolean型で定義します。
今回は、チェックボックスの項目を2つ作成するため、プロパティも2つ定義します。

コントローラーの作成

今回は、コントローラーを1つだけ作成します。
この中に、入力用のビューを呼び出すInput()メソッドと、結果表示用のビューを呼び出すResult()メソッドを作成します。
Result()メソッドには、引数としてチェックボックスの状態を格納したモデルが渡されます。

入力画面用ビューの作成

入力画面用のビューを作成します。
HTMLヘルパーのHtml.CheckBoxFor()メソッドを使って、チェックボックスを作成します。
Html.CheckBoxFor()メソッドの使い方は、以下の通りです。

@Html.CheckBoxFor(Function(model) model.プロパティ名)

「Function(model) model.プロパティ」の部分は、ラムダ式といわれるもので、名前のない関数です。
Functionにmodelが渡され、modelの中のプロパティをHtml.CheckBoxFor()メソッドに引数として渡しています。
modelの内容は、コントローラーから渡されます。
チェックボックスで使うプロパティは、Boolean型を指定します。
上記では、Functionの引数をmodelとしていますが、名前はなんでも構いません
詳しくは、以下のマイクロソフトの公式サイトを参照してください。

Html.Label()メソッドで、New With {.for="ID名"}を指定することで、ラベル部分をクリックしてもチェックできるようになります。

結果表示用ビューの作成

チェックボックスがチェックされたかどうかを表示するためのビューを作成します。
チェックボックスの状態と、その横にチェックのありなしをラベルを使って表示します。
チェックボックスがチェックされていれば True、チェックされていなければ False が入っています。

表示レイアウトの編集

ビューを作成すると、自動的に「Views/Shared/_Layout.vbhtml」が作成されるので、これを以下のように編集します。

プログラムの実行

チェックボックスを2つ用意しているので、片方はチェックをして、もう片方はチェックをしないで、「送信」ボタンを押下します。

vbmvc24-2
入力画面

チェックボックスの入力結果は、以下のように表示されます。
チェックボックスをHtml.DisplayFor()メソッドで呼び出すと、入力不可状態のチェックボックスが表示されます。

vbmvc24-3
結果画面

-PROGRAM, VISUALBASIC
-,