对不起,这可能很明显,但我只需要检查一下。我有一个包含相关信息的嵌套类的类。该类是单数的,不在列表中或MVC不会绑定到该字段的任何内容。
模型
public class Car
{
public GloveBoxDetail GloveBox = new GloveBoxDetail();
}
public class GloveBoxDetail
{
public bool isLockable{get;set;}
}
查看
@Html.DropDownListFor(model => model.GloveBox.isLockable, new SelectList(...))
我是否必须手动创建DropDownList?
由于
克里斯
答案 0 :(得分:0)
您可以将任何IEnumarable绑定到DropDownList
请尝试这样
在控制器
中List<SelectListItem> yesno=new List<SelectListItem>();
yesno.add(new SelectListItem("Yes","Yes",true);
yesno.add(new SelectListItem("No","No");
ViewBag.YesNoList=yesno;
在视图
中@Html.DropDownListFor(model => model.GloveBox.isLockable,
IEnumbarable<SelectListItem>(ViewBag.YesNoList))
在这种情况下,最好使用@Html.CheckboxFor
。如果您需要Nullable<bool>
,那么您可能需要创建自己的自定义Html助手
答案 1 :(得分:0)
昨晚成功解决了这个问题。它仅用于显示数据,因此不需要更新模型,因此我不需要担心回发后的绑定。我通过将选择列表的“选定值”设置为模型来解决它,脏但它可以工作。
由于
克里斯