Mam aplikację internetową C# .Net MVC3. Używam list rozwijanych w całym miejscu i odnoszących sukcesy. Są jednak dwa problemy, z którymi mam problem. Jedyną różnicą jest to, że tworzę SelectLists
w locie w kodzie, zamiast korzystać z tabel Lookup. Używam tabel odnośników dla wszystkich pozostałych zrzutów. Podczas QuickWatch SelectLists
w kodzie, właściwa pozycja ma wartość właściwości Selected
ustawioną na true
. Jednak po załadowaniu strony element o właściwości Selected
nie jest wyświetlany. Pierwszy przedmiot to. Jakieś pomysły? To jeden z tych beznadziejnych. Próbowałem obu sposobów poniżej. W obu przypadkach ViewBag.DateToYear i SelectList DateToYear mieć odpowiednie wartości i '' Wybrane właściwości ustawioneMVC3 Lista rozwijana nie wybiera wybranego elementu
1)
// Kontroler
IList<string> dateToYear = new List<string>();
for (int i = 0; i < numberYears; i++)
{
dateToYear.Add(DateTime.Now.AddYears(i).Year.ToString());
}
ViewBag.DateToYear = new SelectList(dateToYear,"2014")
// Zobacz
@Html.DropDownList("DateFromYear", (SelectList)ViewBag.DateToYear)
2) // Sterownik SAME jak wyżej
// Zobacz
List<SelectListItem> DateToYear = new List<SelectListItem>();
foreach (var m in ViewBag.DateToYear)
{
DateToYear.Add(new SelectListItem { Selected = @m.Selected, Value = @m.Text, Text = @m.Text });
}
@Html.DropDownList("DateFromYear", DateToYear)
czy mógłbyś napisać jakiś kod? –
@Thhomas .... czy to pomaga? – MikeTWebb
Czy próbowałeś DropDownListFor? Dlaczego nie masz opcji SelectList jako części A) ViewBag lub B) mocno wpisanego modelu widoku? Nie widzę, jak się wychodzisz z tego, jak się do tego zbliżasz. –