栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

具有列表类型的ASP.NET MVC DropDownListFor

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

具有列表类型的ASP.NET MVC DropDownListFor

要创建下拉列表,您需要两个属性:

  1. 您将绑定到的属性(通常是整数或字符串类型的标量属性)
  2. 包含两个属性的项目列表(一个用于值,一个用于文本)

在您的情况下,您只有一个字符串列表,无法利用该列表来创建可用的下拉列表。

而对于数字2,您可以使值和文本相同,并且需要绑定属性。您可以使用辅助程序的弱类型版本:

@model List<string>@Html.DropDownList(    "Foo",     new SelectList(        Model.Select(x => new { Value = x, Text = x }),        "Value",        "Text"    ))

其中

Foo
将是ddl的名称,并由默认模型绑定程序使用。因此,生成的标记可能如下所示:

<select name="Foo" id="Foo">    <option value="item 1">item 1</option>    <option value="item 2">item 2</option>    <option value="item 3">item 3</option>    ...</select>

据说,下拉列表的更好的视图模型如下:

public class MyListModel{    public string SelectedItemId { get; set; }    public IEnumerable<SelectListItem> Items { get; set; }}

然后:

@model MyListModel@Html.DropDownListFor(    x => x.SelectedItemId,    new SelectList(Model.Items, "Value", "Text"))

如果要在此列表中预先选择某个选项,则只需

SelectedItemId
将该视图模型的属性设置为集合
Value
中某个元素的对应属性即可
Items



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/470665.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号