关于mvc3 dropdownlistfor的问题。
弱弱的问问,如果controller传递一个model给view。在传递的view当中包含一个List<selectListItem>
比如
User.No=1;
User.Name="admin";
User.Address="来自csdn论坛";
User.Grades=new List<SelectListItem>{
new SelectListItem{Text="1年级",Value=1},
new SelectListItem{Text="2年级",Value=2,Selected=true}, //这里表示当前学生是2年级
new SelectListItem{Text="1年级",Value=1},
};
@Html.DropDownListFor(m=>m.Grades,Model.Grades)
ViewBag.list = new List<SelectListItem>
{
new SelectListItem{Text="1年级",Value="1"},
new SelectListItem{Text="2年级",Value="2",Selected=true}, //这里表示当前学生是2年级
new SelectListItem{Text="1年级",Value="1"},
};
string[] s = new string[1] { "sss" };
return View(s);
@model string[]
@Html.DropDownListFor(a=>a[0],ViewBag.list as List<SelectListItem>)
public static static Utility
{
public static BindGrades(int? selected)
{
var list = new List<SelectListItem>{
new SelectListItem{Text="1年级",Value=1},
new SelectListItem{Text="2年级",Value=2}, //这里表示当前学生是2年级
new SelectListItem{Text="1年级",Value=1},
if(selected)
{
var item=list.FirstOrDefault(x=>x.Value==selected);
item.Selected=true;
}
return list;
}
}
@Html.DropDownListFor(m=>m.Grades,Utility.BindGrades(m.Grades))
希望你能看出我的思路~
[解决办法]
public static List<SelectListItem> BindGrades(int? selected)