W ASP.NET MVC 2 chciałbym napisać bardzo prostą listę rozwijaną, która zawiera statyczne opcje. Na przykład chciałbym zapewnić wybór między „czerwonym”, „niebieskim” i „zielonym”.
c#
asp.net
asp.net-mvc-2
html.dropdownlistfor
Rinesse
źródło
źródło
<%: Html.DropDownListFor( model => model.Color, new SelectList( new List<Object>{ new { value = 0 , text = "Red" }, new { value = 1 , text = "Blue" }, new { value = 2 , text = "Green"} }, "value", "text", Model.Color ) ) %>
lub nie możesz pisać żadnych klas, wstaw coś takiego bezpośrednio do widoku.
źródło
Unikaj grubego palcowania, zaczynając od słownika w modelu
namespace EzPL8.Models { public class MyEggs { public Dictionary<int, string> Egg { get; set; } public MyEggs() { Egg = new Dictionary<int, string>() { { 0, "No Preference"}, { 1, "I hate eggs"}, { 2, "Over Easy"}, { 3, "Sunny Side Up"}, { 4, "Scrambled"}, { 5, "Hard Boiled"}, { 6, "Eggs Benedict"} }; } }
W Widoku przekonwertuj go na listę do wyświetlenia
@Html.DropDownListFor(m => m.Egg.Keys, new SelectList( Model.Egg, "Key", "Value"))
źródło
Cześć, oto jak to zrobiłem w jednym projekcie:
@Html.DropDownListFor(model => model.MyOption, new List<SelectListItem> { new SelectListItem { Value = "0" , Text = "Option A" }, new SelectListItem { Value = "1" , Text = "Option B" }, new SelectListItem { Value = "2" , Text = "Option C" } }, new { @class="myselect"})
Mam nadzieję, że to komuś pomoże. Dzięki
źródło
Lub jeśli pochodzi z kontekstu bazy danych, którego możesz użyć
@Html.DropDownListFor(model => model.MyOption, db.MyOptions.Select(x => new SelectListItem { Text = x.Name, Value = x.Id.ToString() }))
źródło
Z „Wybierz jeden element”
@Html.DropDownListFor(model => model.ContentManagement_Send_Section, new List<SelectListItem> { new SelectListItem { Value = "0", Text = "Plese Select one Item" } } .Concat(db.NameOfPaperSections.Select(x => new SelectListItem { Text = x.NameOfPaperSection, Value = x.PaperSectionID.ToString() })), new { @class = "myselect" })
Pochodzi z kodów: Master Programmer && Joel Wahlund ;
Odniesienie do króla: https://stackoverflow.com/a/1528193/1395101 JaredPar ;
Dzięki Master Programmer && Joel Wahlund && JaredPar ;
Powodzenia przyjaciele.
źródło
@using (Html.BeginForm()) { <p>Do you like pizza? @Html.DropDownListFor(x => x.likesPizza, new[] { new SelectListItem() {Text = "Yes", Value = bool.TrueString}, new SelectListItem() {Text = "No", Value = bool.FalseString} }, "Choose an option") </p> <input type = "submit" value = "Submit my answer" /> }
Myślę, że ta odpowiedź jest podobna do odpowiedzi Berata, ponieważ umieszczasz cały kod swojej DropDownList bezpośrednio w widoku. Ale myślę, że jest to skuteczny sposób tworzenia rozwijanej listy ay / n (boolean), więc chciałem się nią podzielić.
Kilka uwag dla początkujących:
Mam nadzieję, że to komuś pomoże
źródło