创建下拉列表

本文关键字:下拉列表 创建 | 更新日期: 2023-09-27 18:17:12

我正在实现mvc3 c#后台,我想有一个字段,是一个下拉列表与3个字段"ComingSoon,Out, show"。这些字段不是任何类的一部分。我必须创建一个助手类吗?我尝试了以下

<% List<string> foo = new List<string>();
   foo.Add("Showing");
   foo.Add("ComingSoon);"
   foo.Add("Out");
   Html.DropDownList(foo, Model.Status); %>

Status是数据库中需要更新的字段

创建下拉列表

Html.DropDownList("Status", 
    new SelectListItem[]{ new SelectListItem{ Text= "Showing", Value="Showing"},
    //same for others
}); 

既然您正在使用模型绑定,我建议:

<%: Html.DropDownListFor(model=> model.Status, 
                         new List<SelectListItem>() { 
                                new SelectListItem{ Text= "Showing", Value="Showing"},
                                new SelectListItem{ Text= "ComingSoon", Value="ComingSoon"},
                                new SelectListItem{ Text= "Out", Value="Out"}
                         }); %>

对于模型绑定,总是使用结尾带有'For'的,它使post方法更容易,并且如果名称不存在,您会得到反馈。

您可以通过这种方式创建下拉列表。

@{          
    List<KeyValuePair<int, string>> dropdownList =
                                                        new List<KeyValuePair<int, string>>();
                dropdownList.Add(new KeyValuePair<int, string>(0,"Showing"));
                dropdownList.Add(new KeyValuePair<int, string>(1,"ComingSoon"));
                dropdownList.Add(new KeyValuePair<int, string>(2,"Out"));
                SelectList selectList = new SelectList(dropdownList, "key", "value", 0);
}
@Html.DropDownList("foo", selectList)