9

How can i make my DropDownListFor support optgroup? Is there anyway to do it? Notice that this is DropDownListFor, means that it support DataAnnotation client validation

Hieu Nguyen Trung
  • 1,624
  • 5
  • 21
  • 32

4 Answers4

12

Support for optgroups was added to ASP.Net MVC at version 5.2.

The Group property on SelectListItem allows you to specify a group for each item:

New SelectList constructors also allow you to provide the name of the field that contains the group title on the supplied list of items.

The HtmlHelper DropDownList and DropDownListFor methods now generate optgroup elements based on the groups included on the list of items.

Dan Malcolm
  • 4,382
  • 2
  • 33
  • 27
6

This one seems nice: Extending the DropDownList to show the items grouped by a category, and it works for both MVC3 and MVC2.

deerchao
  • 10,454
  • 9
  • 55
  • 60
5

Now Support For Optgroup In Dropdownlist .Net MVC 4

Please Check HTML5 DropDownList Optgroup Tag In MVC

@Html.DropDownGroupListFor(m => m.location_id, data, "-- Select --", new { 
    @data_val = "true",  // for Required Validation
    @data_val_required = "The Name field is required." // for Required Validation
})

Nuget Package avilable

Sender
  • 6,660
  • 12
  • 47
  • 66
4

How can i make my DropDownListFor support optgroup?

There is no built-in support in the framework for this kind of drop down lists. You will have to write your own custom helper or generate the HTML manually (I would tend towards the first option).

Darin Dimitrov
  • 1,023,142
  • 271
  • 3,287
  • 2,928
  • I just take a look into http://aspnet.codeplex.com/ to see the source code of SelectListExtensions for DropDownListFor to write my own helper but couldn't find any? can you make some example plzzz? – Hieu Nguyen Trung Jul 14 '11 at 10:04
  • 2
    @Chrno Love, you have to download the ASP.NET MVC 3 source code. Don't browse it online as it is missing lots of code. – Darin Dimitrov Jul 14 '11 at 10:12