我正在检索一些我希望为其生成下拉列表的int / string对,然后使用这些对过滤项目集合。
目前,我以这种方式在Controller中将这些过滤器创建为SelectLists:
foreach (int key in filterChoices.Keys)
subFilter.Add(new SelectListItem {Value = key.ToString(), Text = filterChoices[key]});
其中“filterChoices”将id(int)和text(string)保存为键值对。
然后我对该怎么做有点困惑。我试图将各种例子中的点点滴滴放在一起,但并不真正理解发生了什么。
这就是我目前正在尝试的事情:
Html.DropDownListFor(m => m.SelectedDimension, new SelectList(Model.DimensionFilter, "Text", "Value", Model.DimensionFilter.First().Text));
第一部分,我不确定它的用途是什么,但我假设它的属性更改控制了列表中的选择内容?沿着那条路线的东西?所以我试图将这个int设置为一个对应于一个过滤条目的任意值,但无济于事。
没有DropDown出现。
答案 0 :(得分:1)
只需使用
@Html.DropDownListFor(m => m.SelectedDimension, Model.DimensionFilter)
如果您已经创建了一个selectList