c#中的SelectList类是什么?

时间:2013-08-06 13:04:40

标签: c# asp.net-mvc selectlist

我正在尝试了解c#ASP.NET MVC4并继续遇到SelectList。我似乎无法找到它的解释,除此之外:

http://msdn.microsoft.com/en-us/library/system.web.mvc.selectlist%28v=vs.108%29.aspx

任何人都可以给出一个简单的解释,并展示如何使用它吗?

3 个答案:

答案 0 :(得分:7)

我在asp.net mvc中使用了一个简单的代码:

Controller

   List<SelectListItem> dropdownItems = new List<SelectListItem>();
   dropdownItems.AddRange(new[]{
                            new SelectListItem() { Text = "Option One", Value = "1" },
                            new SelectListItem() { Text = "Option Two", Value = "2" },
                            new SelectListItem() { Text = "Option Three", Value = "3" }});
   ViewData.Add("DropDownItems", dropdownItems);

并且,在cshtml视图中:

@Html.DropDownList("Types", ViewData["DropDownItems"] as List<SelectListItem>)
@Html.ValidationMessageFor(model => model.Types)

答案 1 :(得分:3)

SelectList 类,其中包含Key,Value对,Selected项为True。

例如,

listItems.Add(new SelectListItem
                {
                    Text = xElement.Element("text").Value,
                    Value = xElement.Element("value").Value
                });

var selected = listItems.Where(x => x.Value == "Test1").First();
selected.Selected = true;

此示例有助于在下拉列表中获取所选值。

答案 2 :(得分:1)

使用ASP.NET MVC中的下拉列表有一些令人困惑的方面,这就是你找到一些帮助开发人员使用这个流行对象的类的原因。

我认为有一篇很棒的博客文章可以清楚地描述SelectList。

http://odetocode.com/Blogs/scott/archive/2010/01/18/drop-down-lists-and-asp-net-mvc.aspx