asp.net-mvc - MVC3 模型 - 如何使 editorfor 成为下拉菜单?

标签 asp.net-mvc asp.net-mvc-3 razor

我正在制作一个 MVC4 网络应用程序供 2 所大学的同学使用,稍后我将扩展到其他学校。在我的模型中,我目前有

       public string school { get; set; }

当我这样做的时候我会喜欢它

       @Html.EditorFor(model => model.school)

这将是“学校 1”和“学校 2”的下拉列表。

我怎样才能干净利落地做到这一点?如果可以的话,我希望能够在模型中进行更改,并且除了调用@Html.EditorFor 之外不必在 View 中执行任何操作。如果完成此操作的唯一方法是在 View 中执行某些操作,那也可以。

最佳答案

您可以使用 Html.DropDownListFor 而不是 Html.EditorFor

@{
   var items = new SelectList(new[]
                   {
                       new SelectListItem {Text = "School1", Value = "School1"},
                       new SelectListItem {Text = "School2", Value = "School2"},
                   }, "Text", "Value");
}

@Html.DropDownListFor(x => x.school, @items)

关于asp.net-mvc - MVC3 模型 - 如何使 editorfor 成为下拉菜单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10425982/

相关文章:

c# - Asp.net-MVC 自定义验证 - NULL 与空

c# - 访问站点时 Windows 登录提示

html - IE7 并在 MS CRM 的 iframe 中发布表单 = 新窗口

asp.net-mvc - 如何使用 ASP.MVC 4 向 HTML.BeginForm 添加属性?

c# - 如何在不继承的情况下向自定义错误页面提供错误消息?

c# - MVC5 ViewModel 验证远程

c# - 单线在哪里?

asp.net-mvc-3 - MVC3虚拟目录 View 文件夹非常慢

asp.net-mvc - Razor 多行内联模板

asp.net - MVC3 Html 编辑器助手显示旧模型值