2014-05-22 6 views
22
@Html.DropDownListFor(model => model.Status, new List<SelectListItem> 
     { new SelectListItem{Text="Active", Value="True"}, 
     new SelectListItem{Text="Deactive", Value="False"}}) 

In vista Sto usando questa codifica a discesa della dowenlist. Corro il mio valore di disattivazione predefinito dell'applicazione è visualizzato nella casella di riepilogo a discesa. Voglio visualizzazione predefinita attivo@ Html.DropDownListPer come impostare il valore predefinito

+0

Spero di stato è di tipo di valore ddl boolean.By di default impostato su "Disattiva" come valore booleano di default è "false". Rendi facoltativo lo stato o converti il ​​tipo in int e imposta i valori come 1/0 anziché vero/falso – malkam

+0

http://stackoverflow.com/questions/23610941/mvc-dropdownlistfor-default-valor-for-bool/ – malkam

+0

@Html .DropDownListFor (model => model.Status, new List {new SelectListItem {Text = "Active", Value = "1", Selected = true}, new SelectListItem {Text = "Deactive", Value = " 0 "}}) Funziona correttamente – satheeshkumarMCA

risposta

36

Ti piace questa:

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

Se si desidera attivo essere selezionata per impostazione predefinita quindi utilizzare Selected proprietà di 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") 

Se si utilizza SelectList, allora si utilizzare this overload e specificare SelectListItemValue proprietà che si desidera impostare selezionato:

@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" }) 
+0

Penso che non funzionerà. http://stackoverflow.com/questions/23610941/mvc-dropdownlistfor-default-value-for-bool/ – malkam

+0

L'ho testato prima sul mio sistema, poi pubblicato –

+0

@malkam Ho usato 0 e 1 invece di vero/falso e ha funzionato ma ogni volta che invio il modulo, il valore inviato è ** False ** anche se provo a inviare true/1. Aiutami – satheeshkumarMCA

0

provare questo

@Html.DropDownListFor(model => model.UserName, new List<SelectListItem> 
    { new SelectListItem{Text="Active", Value="True",Selected =true }, 
    new SelectListItem{Text="Deactive", Value="False"}}) 
1

SelectListItem ha una proprietà Selected. Se stai creando i SelectListItem s in modo dinamico, puoi semplicemente impostare quello desiderato come Selected = true e sarà quindi il valore predefinito.

SelectListItem defaultItem = new SelectListItem() 
{ 
    Value = 1, 
    Text = "Default Item", 
    Selected = true 
}; 
0

Spero che questo sia utile per voi.

Si prega di provare questo codice,

@Html.DropDownListFor(model => model.Items, new List<SelectListItem> 
    { new SelectListItem{Text="Deactive", Value="False"}, 
    new SelectListItem{Text="Active", Value="True", Selected = true}, 
    })