ASP.NET MVC 5.2でひっそりとoptgroupがサポートされている
5853 ワード
ASP.NET MVCのDropDownListForはoptgoupがサポートされていなくて残念な思いをしていましたが、5.2でひっそりとサポートされるようになりました。
新しいヘルパが増えるのではなく、System.Web.Mvc.SelectListItemクラスにGroupというプロパティが追加されていて、このプロパティにSystem.Web.Mvc.SelectListGroupオブジェクトを設定します。同じオブジェクトが設定されているSelectListItemがoptgroupとしてグルーピングされるという仕組みです。名前が同じだけではグルーピングされません。
var items = new List<SelectListItem>();
var group1 = new SelectListGroup() { Name = "Group 1" };
var group1_2 = new SelectListGroup() { Name = "Group 1" };
var group2 = new SelectListGroup() { Name = "Group 2" };
items.Add(new SelectListItem() { Text = "Item1", Group = group1 });
items.Add(new SelectListItem() { Text = "Item2", Group = group1 });
items.Add(new SelectListItem() { Text = "Item3", Group = group1_2 }); // 別のグループになる
items.Add(new SelectListItem() { Text = "Item4", Group = group2 });
items.Add(new SelectListItem() { Text = "Item5", Group = group2 });
items.Add(new SelectListItem() { Text = "Item6", Group = group1 }); // 初めのgroup1と一緒になる
items.Add(new SelectListItem() { Text = "Item7", Group = group1 }); // 初めのgroup1と一緒になる
@Html.DropDownList("select", items)
参考
Author And Source
この問題について(ASP.NET MVC 5.2でひっそりとoptgroupがサポートされている), 我々は、より多くの情報をここで見つけました https://qiita.com/rryu/items/0fdfde55a62a44f0add0著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .