【问题标题】:Adding global blank option to DroDownList in MVC在 MVC 中向 DropDownList 添加全局空白选项
【发布时间】:2010-05-26 02:21:56
【问题描述】:

有没有办法在 mvc 中使用模板化帮助程序,以便我项目中的每个选择列表都有一个自定义的默认“选择一个选项”,值为空等。

我看到的帖子似乎有点复杂,是否可以在共享视图文件夹中有一个 DropDownList.ascx 文件,如下所示:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<SelectListItem>>" %>
<%= Html.DropDownList(selectlist name, selectlist value, "Choose an option")%>

然后为 ViewModel 中的每个下拉列表设置一个 UIHint("DropDownList")?非常感谢有关参数语法的一些指导,其中传递了视图模型下拉列表的名称和值以及“选择一个选项”字符串。

或者这都是一厢情愿?

【问题讨论】:

    标签: c# asp.net-mvc-2 drop-down-menu


    【解决方案1】:

    单独的视图没有意义,因为下拉列表只会创建 html 标记, 你可以有一个 HTML 扩展来部分解决你的问题,

    创建一个类似这样的扩展方法

    public static string MyDropDownList(this HtmlHelper htmlHelper, IEnumerable<SelectListItem> selectList) {
        return Html.DropDownList(selectlist name, selectlist value, "Choose an option");
    }
    

    从您的角度来看,您可以创建下拉列表

    <%= Html.MyDropDownList(selectlist name, selectlist value)%>
    

    如果您想将文本“选择一个选项”更改为“选择一个选项”,您只需更改扩展方法即可。

    【讨论】:

    • 感谢 Elangovan 的建议,我会告诉你我的进展情况。
    猜你喜欢
    • 2014-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-19
    相关资源
    最近更新 更多