asp.net-mvc - DropDownListFor(...) 默认选择 boolean false

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

我在应用程序中有典型的 YesNo 下拉菜单。为此,我为 future 的扩展目的开发了模型(而不是 ViewModel 实用程序)类。

public string Text { get; set; } // represents text part
        public bool Value { get; set; } // represent value
        public List<DropDown> DropDowns { get; set; } //list for binding
        public void BuildYesNoDropDown()
        {
            DropDowns = new List<DropDown>();
            DropDowns.Add(new DropDown { Text = "Yes", Value = true });
            DropDowns.Add(new DropDown { Text = "No", Value = false });
        }

然后,我将其绑定(bind)在如下 View 中:
@Html.DropDownListFor(x => x.SelectedValue, new SelectList(Model.DropDowns, "Value", "Text",1),"Select") //last para - OptionLabel

在 View 上,所有三个参数都得到显示,即“选择”、"is"和“否”。但是,默认情况下已选择“否”。如果我将“Value”属性设为整数,那么它可以正常工作,默认情况下会选择“Select”,但如代码中所述,如果我倾向于使用 bool 类型,则选择“No”。

当 DataValueField 为 bool 时如何获得正常行为?

最佳答案

查看型号

public bool flag { get; set; }

查看
@Html.DropDownListFor(model => model.flag, new List<SelectListItem>()
{
   new SelectListItem() { Text = "Yes", Value = "True" },
   new SelectListItem() { Text = "No", Value = "False"}
}, "Select.....", new { @id = "flag", @class="form-control" })
@Html.ValidationMessageFor(model => model.flag)

关于asp.net-mvc - DropDownListFor(...) 默认选择 boolean false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7676994/

相关文章:

asp.net-mvc-2 - ASP.NET MVC - 嵌套应用程序中的 Controller 名称

c# - ASP.NET MVC 模型联编程序未正确解析 ISO DateTime

c# - 使用授权属性验证登录用户的身份

c# - Kendo Grid 在第一个之后不在任何页面上绑定(bind)数据

asp.net-mvc-3 - 在 Asp.net MVC 中实现 XML 本地化的最佳方法?

asp.net-mvc - 如何在 ASP MVC 中编码完整的 URL 字符串

jQuery 通用代码

c# - 有没有办法从 .Net 应用程序中运行 iis express?

asp.net-mvc - 带有嵌套 View 模型和 Knockout 的 ASP.NET MVC

asp.net-mvc - 如何从 MVC3 中的区域 Controller 中出来?