2012-04-04 4 views
0

In meinem Controller verwende ich folgendes:Gibt es eine Entsprechung zu HTML.DropDownList, die eine ungeordnete Liste in MVC3 erstellt?

ViewBag.ReferenceId = new SelectList(_reference.Get("00") 
    .AsEnumerable() 
    .OrderBy(o => o.Order), "RowKey", "Value", "00"); 

Dann meiner Ansicht verwende ich die folgende Erweiterung eine Dropdown-Liste zu erstellen:

@Html.DropDownList("ReferenceID", 
    null, 
    new { 
    id = "ReferenceID", 
    @class = "combobox2", 
    style="width: 150px;" 
    } 
) 

Nun möchte Ich mag, dies ändern, um eine ungeordnete Liste erstellen . So etwas wie die folgenden:

<ul id="categories" class="pane list"> 
    <li><a href="#">Websites</a></li> 
    <li><a href="#">Web Design</a></li> 
    <li><a href="#">Print</a></li> 
</ul> 

Gibt es eine MVC-Erweiterung, die das für mich tun kann, oder ist es eine einfache Weise, die ich etwas codieren können?

+1

Warum nicht einfach ein @ for-each? – McGarnagle

Antwort

1

Es gibt kein Äquivalent, wenn Sie es auf eigene Faust so schreiben könnte:

tagsList = "<ul>{0}</ul>"; 
tagsListItem = "<li>{0}</li>"; 
StringBuilder result = new StringBuilder(); 
list.ForEach(listItem => result.AppendFormat(tagsListItem, item.ToString())); 
return string.Format(tagsList, result.ToString()); 

Und man könnte den Code für Ihre Bedürfnisse passen (wie das Hinzufügen von zusätzlichen Tags, Attribute etc.)

+0

Das scheint eine gute Idee zu sein, aber ich bin mir nicht sicher, wie ich die Erweiterung schreiben soll. Können Sie mir sagen, wo ich den Code für @ Html.DropDownList finden kann, vielleicht kann ich das als Ausgangspunkt verwenden. Danke –

+0

Quelle kann hier gefunden werden: http://aspnet.codeplex.com/ –

Verwandte Themen