Asp.net mvcでは、次を使用できます。
@Html.DropDownListFor(model => model.Category, ViewBag.Category as IEnumerable<SelectListItem>, "-- SELECT --", new { @class = "form-control" })
Asp.net 5を使用して、taghelperにデフォルト値またはnull値(-SELECT-)を含める方法:
<select asp-for="Category" asp-items="@ViewBag.Category" class="form-control"></select>
Select内にオプション項目を挿入するだけです:
<select asp-for="Category" asp-items="@ViewBag.Category" class="form-control">
<option disabled selected>--- SELECT ---</option>
</select>
上記のコードのdisabled
キーワードは、リストで選択肢が選択されると、「--- SELECT ---」行を再度選択できないことを意味します。ユーザーが選択範囲を再び空白にできるようにする場合(つまり、null許容フィールドにバインドされている場合)、disabledを省略します。
モデルにasp-itemsを使用する場合、選択したアイテムに値0を使用します。値なしのデフォルト文字列を持つタグ<option>
がある場合、
<option>
にループを使用し、デフォルトのオプションをループ外にする必要があります。これは、asp-itemsを使用した.Net Coreの例です。
<select asp-for="DepartmentUnit" asp-items="@Model.DepartmentUnits" class="form-control"></select>
そして今、これはループを使用するための別の例です:
<select>
<option val="">--Select--</option>
foreach(item in Model.DepartmentUnits)
{<option val="@item.val">@item.title</option>}
</select>
値nullをデータベースに保存する場合は、<option selected value="">Full Access</option>
を使用します