@ Html.DropDownListFor如何设置默认值

sat*_*MCA 43 c# asp.net-mvc dropdownbox razor

@Html.DropDownListFor(model => model.Status, new List<SelectListItem> 
       { new SelectListItem{Text="Active", Value="True"},
         new SelectListItem{Text="Deactive", Value="False"}})
Run Code Online (Sandbox Code Playgroud)

在视图中我正在使用此drop dowenlist编码.我运行我的应用程序默认的deactive值显示在下拉列表框中.我希望显示默认为Active

Ehs*_*jad 56

像这样:

@Html.DropDownListFor(model => model.Status, new List<SelectListItem> 
       { new SelectListItem{Text="Active", Value="True"},
         new SelectListItem{Text="Deactive", Value="False"}},"Select One")
Run Code Online (Sandbox Code Playgroud)

如果您希望默认选择Active,则使用以下Selected属性SelectListItem:

@Html.DropDownListFor(model => model.Status, new List<SelectListItem> 
           { new SelectListItem{Text="Active", Value="True",Selected=true},
             new SelectListItem{Text="Deactive", Value="False"}},"Select One")
Run Code Online (Sandbox Code Playgroud)

如果使用SelectList,则必须使用此重载并指定SelectListItem Value要设置的属性:

@Html.DropDownListFor(model => model.title, 
                     new SelectList(new List<SelectListItem>
  {
      new SelectListItem { Text = "Active" , Value = "True"},
      new SelectListItem { Text = "InActive", Value = "False" }
  },
    "Value", // property to be set as Value of dropdown item
    "Text",  // property to be used as text of dropdown item
    "True"), // value that should be set selected of dropdown
     new { @class = "form-control" })
Run Code Online (Sandbox Code Playgroud)


Ela*_*hmi 5

SelectListItem有一个Selected属性。如果要SelectListItem动态创建,则只需Selected = true将其设置为默认值即可。

SelectListItem defaultItem = new SelectListItem()
{
   Value = 1,
   Text = "Default Item",
   Selected = true
};
Run Code Online (Sandbox Code Playgroud)