Html.DropDownListFor()
を使用して、リストからのデータを含むドロップダウンを表示しています。リストアイテムにはIsPublic
というブール値プロパティがあり、このアイテムがパブリックかどうかを定義します。あなたが見ることができるように、私はプロパティIsPublic
によってグループ化していますHtml.DropDownList boolによるグループ化 - bool値の代わりに文字列を表示
@Html.DropDownListFor(m => m.SelectedLayout,
new SelectList(Model.Layout, "LayoutString", "LayoutName", "IsPublic", 1))
:ここ
は、私がドロップダウンを定義する方法です。グループ分けは、ブール値(true
とfalse
)によってどのように行われるか
お知らせ:予想通り、グループ分けは、グループの以下の命名で、次のように行われます。
このグループをカスタム文字列として表示する方法はありますか?まだブール値をグループ化していますか?したがって、IsPublic == true
にグループ化名をPublic
、その逆の場合にはIsPublic == false
と表示グループ名をPrivate
と表示すると、
あなたは新しい 'SelectListGroup'を作成し、(' bool'値に基づいて)その 'NAME'プロパティを設定して、説明したように、新しい' SelectListItem'を作成し、 'Group'プロパティを設定することによってこれを行うことができます[この回答](http://stackoverflow.com/questions/37151572/constructing-a-select-list-with-optgroup-groups/37152663#37152663)の第2部にあります。あなたはモデルを表示していないか、それとも価値がどれくらいのものが含まれているので、コードを書くのが少し難しいです –