嗯,首先,我认为你必须选择DropDownListFor
,而不是DropDownList
,如果你的第一个论点是Expression(Of Func(Of TModel, TProperty))
在这两种情况下,都没有DropDownList/For
最后采用 2 个字符串的重载,一个用于默认文本,另一个用于默认值。
如果你这样做
@Html.DropDownList(Function(model) model.Type, DirectCast(ViewBag.Type, IEnumerable(Of SelectListItem)), "None Selected")
当“无选选中”是ChoOp选项时,您将获得型号的空值。
如果您想完全管理默认值和文本,则必须将其直接添加到您的SelectListItem
(so in ViewBag.Type
).
并使用
@Html.DropDownList(Function(model) model.Type, DirectCast(ViewBag.Type, IEnumerable(Of SelectListItem)))
但不确定它是否有用。使用其他解决方案,您可以检查是否已通过类似的方式选择“未选择”(我使用 c#,请原谅语法错误)
If Model.Type is Nothing Then