有没有办法删除下面的selectlist参数并仍然使用HTML Helper?我喜欢强类型选项,但是使用knockout.js很多。
@Html.DropDownListFor(m => m.ProgramId, new SelectList(Enumerable.Empty<ProgramModel>()), new { data_bind = "enable: programs().length > 0, value: programId, options: programs, optionsText: 'Name', optionsValue: 'Id', optionsCaption: ' -- Choose Program -- ', event: { change: function(_,event) { getLicenseProductsForProgram() } }" })
答案 0 :(得分:1)
不,那是不可能的。标准的DropDownList / DropDownListFor助手期望IEnumerable<SelectListItem>
作为第二个参数。显然,没有什么可以阻止您编写自定义帮助程序或自定义编辑器模板。
答案 1 :(得分:1)
由于下拉列表实际上需要包含选项列表,因此需要selectlist参数。您可以随时将空列表传递给它:
@Html.DropDownListFor(m => m.ProgramId, new List<SelectListItem>(), new { [the rest of your stuff] })