背景:我的页面上有 4 个下拉列表,它们都使用一个列表来SelectListItem
从中提取数据。所有这 4 个下拉菜单中的元素始终完全相同。每个下拉列表的顶部都有一个空元素。
问题:如果我没有从呈现第二个的列表中选择一个项目,当页面加载第二个列表时,会自动选择在第一个列表中选择的项目。这是因为(我认为)列表有一个SelectListItem
where Selected = true
,它只是在第二个列表中使用那个。
有没有办法将一个列表源用于多个下拉列表?我不想重复这个列表 4 次,除非我绝对必须......
代码:
//this is the list source
public IEnumerable<SelectListItem> PossibleItems { get; set; }
//this is the code on my .cshtml page
@Html.DropDownListFor(x => x.SelectedItem1, Model.PossibleItems)
@Html.DropDownListFor(x => x.SelectedItem2, Model.PossibleItems)
@Html.DropDownListFor(x => x.SelectedItem3, Model.PossibleItems)
@Html.DropDownListFor(x => x.SelectedItem4, Model.PossibleItems)