如何添加dropdownlistfor(动态对象)

时间:2017-02-26 19:26:50

标签: asp.net-mvc

我有课包括以下对象

public class ProductViewer
{
    public J_Items Item { get; set; }
    public List<J_ItemsImages> lstItemImages { get; set; }
}

如何添加DropDownListFor Item.ItemName

J_Items定义

public int ID { get; set; }
    public string ItemName { get; set; }
    public string ItemShortDesc { get; set; }
    public string ItemLongDesc { get; set; }

2 个答案:

答案 0 :(得分:0)

@Html.DropdownlistFor(m => m.Item.ItemName)

其中m是您的ProductViewer类,当然应该是视图模型。

答案 1 :(得分:0)

您可以使用Html.DropDownListFor()帮助器方法的第一个参数来指定要绑定到哪个属性,然后使用第二个参数提供一个集合来填充实际的下拉列表:

<!-- This would bind to the ItemName property, but would populate the list with
     the contents of your lstItemImages property -->
@Html.DropDownListFor(m => m.Item.Name, new SelectList(Model.lstItemImages, "Name", "Name"))

同样,如果您的J_Items课程中有一组值,您也可以在第二个参数中访问这些值:

@Html.DropDownListFOr(m => m.Item.Name, new SelectList(Model.Item.SomeCollection,"Value,"Text")

这假设您的父ProductViewer类将被传递到视图中。