C# DropDownList的选定值未显示
我正在尝试为我的dropdownlist设置一个选定值,但无法使其显示在页面上 这就是我设置所选值的方式C# DropDownList的选定值未显示,c#,asp.net-mvc,drop-down-menu,C#,Asp.net Mvc,Drop Down Menu,我正在尝试为我的dropdownlist设置一个选定值,但无法使其显示在页面上 这就是我设置所选值的方式 productHier = new SelectList(hierarchyList, "ProductHierarchyID", "ProductHierarchyCode", orderline.PrmProductVariant.PrmProduct.PrmProductHierarchy1 ); ViewBag.productHier = productHier; 这就是我认为的部
productHier = new SelectList(hierarchyList, "ProductHierarchyID", "ProductHierarchyCode", orderline.PrmProductVariant.PrmProduct.PrmProductHierarchy1 );
ViewBag.productHier = productHier;
这就是我认为的部分
@Html.DropDownList("Hierarchy", (IEnumerable<SelectListItem>)ViewBag.productHier, "Hierarchy Seçiniz", new { @Class = "form-control control-text" })
@Html.DropDownList(“Hierarchy”,(IEnumerable)ViewBag.productHier,“Hierarchy Seçnizing”,新{@Class=“form control text”})
在这个问题上,我尝试了许多其他问题的建议,但没有一个对我有帮助。我想知道我错过了什么
编辑:调试时,我可以在控制器和视图中看到指定为选定值的值,但不知何故,我无法在页面上看到它们。要绑定
层次结构
值,需要使用DropDownListFor
HtmlHelper,如下所示:
@Html.DropDownListFor(m=>m.Hierarchy, (IEnumerable<SelectListItem>)ViewBag.productHier, "Hierarchy Seçiniz", new { @Class = "form-control control-text" })
@Html.DropDownListFor(m=>m.Hierarchy,(IEnumerable)ViewBag.productHier,“Hierarchy Seçnizing”,新{@Class=“form control text”})
返回视图时,必须在控制器中设置
层次结构
属性。我认为按照您的方式,您需要这样做:
@Html.DropDownList("productHier", null, "Hierarchy Seçiniz", new { @Class = "form-control control-text" })
请注意,这种创建下拉列表的方式不适用于验证
您必须使用DropDownListFor
以获得正确的验证
希望这有帮助 是模型中的一个属性。如果是这样,那么将其设置为您想要选择的选项的值(绑定到模型时,
SelectList
构造函数的第四个参数被忽略。它只是下拉列表的名称,在我的模型中没有任何名称为“Hierarchy”的内容。