У меня есть предустановленное раскрывающееся меню, я хочу, чтобы выпадающее меню было выбрано в объекте viewdata, но не нужно выбирать вариант на странице.aspx
Здесь, как выглядит мое меню
<td headers="Vehicle" style="background-color:#EFF3FB;font-family: Verdana; font-size: 10px;"><select>
<option value="Car">Car</option>
<option value="Bus">Bus</option>
<option value="Lorry">Lorry</option>
<option value="Truck">Truck</option>
</select>
</td>
Вот вид ViewData.Model.VehicleDetails.Vehicle
будет выбран автомобиль. но не выбирайте его внутри страницы aspx.
<select>
<%if (ViewData.Model.Details.ElementAt(i).vehicle == "Car")%>
<%{%>
<option value="car" selected="selected">car</option>
<option value="Bus">Bus</option>
<option value="Lorry">Lorry</option>
<%} %>
<%else if (ViewData.Model.Details.ElementAt(i).vehicle == "Bus")%>
<%{%>
<option value="car" >car</option>
<option value="Bus" selected="selected">Bus</option>
<option value="Lorry">Lorry</option>
<%} %>
<%else if (ViewData.Model.Details.ElementAt(i).vehicle == "Lorry")%>
<%{%>
<option value="car">car</option>
<option value="Bus">Bus</option>
<option value="Lorry" selected="selected">Lorry</option>
<%} %>
</select>
Добавить другое свойство в вашем режиме для списка:
public class YourModel
{
public SelectList VehiclesList {get;set;}
public string SelectedVehicle {get;set;}
}
В бою:
List<SelectListItem> list = new List<SelectListItem>();
list.Add(new SelectListItem{Text="Car",Value="Care"});
list.Add(new SelectListItem{Text="Bus",Value="Bus"});
list.Add(new SelectListItem{Text="Truck",Value="Truck"});
yourModel.VehiclesList = new SelectList(list,"Value","Text", ViewData.Model.VehicleDetails.Vehicle);
Ввиду:
<%: Html.DropDownListFor(model => model.SelectedVehicle , Model.VehiclesList)%>
Обновлено:
вы также можете сделать следующее:
<%= Html.DropDownList(ViewControlNames.vehicle,
new SelectList(new List<SelectListItem> {
new SelectListItem{ Text="Car", Value = "car" },
new SelectListItem{ Text="Bus", Value = "Bus" },
new SelectListItem{ Text="Truck", Value = "Truck" } },"Bus"),
new { id = ViewControlNames.vehicle, Class = "ShortInputField"})) %>