我使用ASP.NET MVC和我試圖渲染與HtmlHelper.DropDownListFor方法的選擇列表,像這樣:ASP.NET MVC:將自定義屬性,進入選項標籤在選擇列表
<%= Html.DropDownListFor(x => x.AllTopics, SelectListHelper.GetSelectListItems(Model.AllTopics), "Select a Topic", new { id = "allTopics", @class = "topic-dropdown" })%>
其中SelectListHelper剛剛從任何收集我們傳遞一個IList<SelectListItem>
返回。這正常工作對簡單的事情,但我希望能夠到一個title屬性添加到每個選項標籤(不的選擇列表本身)。但DropDownListFor只需要IEnumerable<SelectListItem>
,而SelectListItem沒有任何可放入title屬性的位置。
有沒有辦法做到這一點,沒有前面的DropDownListFor方法和手寫出選擇列表和每個元素?
是的,這就是我最終做的......基本上從.NET Reflector中取出一堆代碼。似乎工作,但讓我有點緊張,因爲這些方法似乎在做的所有其他垃圾,這可能有點難以破譯。我想我們只是修復它。 – amkessel 2009-12-03 17:00:27
不需要使用反射器; ASP.NET MVC的代碼是公開的:http://aspnet.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=24471 – 2009-12-03 21:14:07