2016-09-03 4 views
-1

Я хочу использовать сумку просмотра, но я не хочу влиять на название выпадающего списка. Я хочу, чтобы в раскрывающемся списке использовалось другое имя. возможно ли это или имеет другое решение.как я могу использовать viewbag, не влияя на имя выпадающего списка

Моих коды в Виде:

@{ 
    ViewBag.concurring1 = TempData["pathologistlist"]; 
}        
@Html.DropDownList("concurring", "Select Pathologist") 

ответ

1

Там находится еще один overload из вспомогательного метода DropDownList, который позволяет генерировать ВЫБЕРИТЕ элемент с пользовательским именем и значением идентификатора

public static MvcHtmlString DropDownList(
    this HtmlHelper htmlHelper, 
    string name, 
    IEnumerable<SelectListItem> selectList, 
    IDictionary<string, object> htmlAttributes 
) 

Так что ваш код будет

@Html.DropDownList("MyCustomName",ViewBag.concurring as List<SelectListItem>,"Select one") 

Предполагая, что существует запись ViewBag для fo г concurring, который имеет типа IEnumerable<SelectListItem>

var list= new List<SelectListItem>{ 
    new SelectListItem { Value="MI", Text="Michigan" }, 
    new SelectListItem { Value="NY", Text="New York" } 
}; 
ViewBag.concurring = list; 

Приведенные выше код будет генерировать ВЫБЕРИТЕ элемент со значением имени идентификатора, установленным в «MycustomName»

+0

он говорит Там нет ViewData элемента типа «IEnumerable », что имеет ключ MyCustomName –

+0

Вы попробовали обновленный ответ? – Shyju

+0

спасибо за ответ, но знаете ли вы, как добавить жестко заданные значения вместе со значениями из базы данных в раскрывающемся списке? –