ビューヘルパー(フォーム関連)②

ビューヘルパー(フォーム関連)②


【コンボボックス/リストボックス生成 DropDownListFor/ListBoxForメソッド】

DropDownListForメソッドはコンボボックス(単一選択式)を、ListBoxForはリストボックス(複数選択式)を
それぞれ生成する。
どちらもselect要素を出力するが、ListBoxForはmultiple属性を出力する。

以下は具体的なコード例
[コントローラー]

SelectListItemは、各選択オプションを作成する為のクラス
・Valueプロパティ:値
・Textプロパティ:表示テキスト
・Selectedプロパティ:選択状態かどうか
※選択オプションはビューの中で宣言しても構わない。

[ビュー]

arrow_down
[出力結果(画面)]
16
[出力結果(HTML)]

 

【列挙型からコンボボックスを生成 EnumDropDownListメソッド】

EnumDropDownListメソッドは列挙型(Enum)からコンボボックスを生成する。

以下は具体的なコード例
[モデル(ENUM)]

[モデル(Class)]

[ビュー]

arrow_down
[出力結果(画面)]
17
[出力結果(HTML)]

 

【Modelと紐づかないフォーム要素を生成する TextBox・Labelメソッド等】

~Forメソッドがモデルに紐づいたフォーム要素を生成するのに対して、
Forなしのメソッドはモデルとは独立したフォーム要素を生成するためのメソッド

[ビュー]

arrow_down
[出力結果(画面)]
18
[出力結果(HTML)]

※他にも@Html.Password(), @Html.CheckBox(), @Html.RadioButton(), @Html.Hidden(), @Html.TextArea()等あり