为什么我的DropDownList不显示我的值?

时间:2012-09-18 10:21:45

标签: c# .net asp.net-mvc-3 razor

我有一个下拉列表,我填充的SelectList填充了SelectListItem个对象,但它正在渲染类名而不是正确的值。谁能看到我哪里出错?

wonky list

以下是我呈现列表的代码:

@Html.DropDownListFor(m => m.SelectedValue, @Model.RangeValues.SelectList)

模型的类型为DataParameterValuesModel ...

public class DataParameterValuesModel
{
    public string Description { get; set;}
    public DataRangesModel RangeValues { get; set; }
}

public class DataRangesModel
{
    public int? SelectedIdx { get; set; }
    public SelectList SelectList { get; set; }
}

SelectList填充了SelectListItem这样的对象:

List<SelectListItem> items = new List<SelectListItem>();

[...]

items.Add(new SelectListItem()
{
    Text = "whatever",
    Value = "whatever2"
});

[...]

parms.RangeValues = new DataRangesModel()
{
    SelectList = new SelectList(items),
    SelectedIdx = null
}

wonky debug

1 个答案:

答案 0 :(得分:2)

尝试使用SelectList的第3个构造函数并指定数据值字段和数据文本字段。

parms.RangeValues = new DataRangesModel()
{
    SelectList = new SelectList(items,"Value","Text"),
    SelectedIdx = null
}

Here MSDN参考